Как объединить содержимое файлов и прикрепить имена файлов в выходной файл? - PullRequest
0 голосов
/ 29 апреля 2019

У меня много простых текстовых файлов.Каждая из них имеет только одну строку, например,

data_1

data_2

data_3

data_4

Каждый из файлов имеет уникальное имя,например,

Имя_01_apr_29

Имя_02_apr_29

Имя_03_apr_29

Как объединить содержимое файла и имя файла?

Мне нужно:

data_1; Name_01_apr_29

data_2; Name_02_apr_29

data_3; Name_03_apr_29

и т. Д.

Мне нужно сделать это в некоторых командах linux или в bash(немного script.sh), потому что мне нужно периодически запускать этот запрос в cron.

Я работаю над debin 8.

1 Ответ

0 голосов
/ 30 апреля 2019

Решение awk простое:

awk '{print $0 ";" FILENAME}' Name_*_apr_29

Другой метод использует grep.Вам нужно изменить порядок вывода:

grep . Name_*_apr_29 | cut -d: -f2,1 | tr ':'  ';'

или

grep . Name_*_apr_29 | sed -r 's/([^:]*):(.*)/\2;\1/'
...