Объединение текстовых файлов с одним заголовком

Вы можете отключить капитализацию первого слова каждого предложения с помощью Tools → Autocorrect → Параметры автозамены ...

Как отмечено в нижней части вкладки параметров, вы можете выбрать применять ли предпочтение к существующему тексту и / или при вводе нового текста:

[M]: Replace while modifying text
[T]: AutoCorrect while typing
131
задан 7 May 2018 в 18:29

1 ответ

Здесь вы можете использовать awk:

awk 'FNR==1{ header=$0;next} {print >"file"header}' filexx*

Создает один или несколько новых файлов, объединяя файлы с одинаковыми заголовками в первой строке:

$ cat file1945
Zenon
$ cat file1950
Frank
Church
James
McClure
Bob

] Объяснения с включением кавычек из документации awk:

Предварительно определенная встроенная документация awk - это текущий номер записи в текущем файле. awk увеличивает FNR каждый раз при чтении новой записи (см. Запись). awk сбрасывает FNR до нуля каждый раз при запуске нового входного файла. Поэтому, когда мы делаем FNR==1, мы принимаем только действие и получаем эту строку, когда это первая строка текущего файла и сохраняем ее содержимое в переменной, называемой header.

Записи заставляют awk немедленно прекратить обработку текущей записи и перейти к следующей записи. Это означает, что для текущей записи не выполняются дополнительные правила, а остальная часть действия текущего правила не выполняется, поэтому в следующий раз FNR!=1 и это приведет к тому, что awk выполнит следующий блок, который перенаправляет [ f17] (записи / строки) в файл с именем file#### (#### заменит значение переменной header, помните, что вам нужно указать часть имени файла, что это строка.

Мы использовали перенаправление здесь. Когда этот тип перенаправления используется, строка стирается до того, как будет записан первый вывод. Последующая запись на тот же вывод- файл не удаляет выходной файл, а добавляет к нему (это отличается от того, как вы используете перенаправления в сценариях оболочки.) Если выходной файл не существует, он создается.

3
ответ дан 22 May 2018 в 11:33

Другие вопросы по тегам:

Похожие вопросы: