Как я могу переписать строки в текстовом файле с помощью grep [sed]?

У меня есть текстовый файл, в котором каждая строка имеет такой формат ...

25126 Акерс, Дэвид

И мне нужно поместить его в такой формат, чтобы вставить в базу данных ...

25126;Akers, David;

Единственная проблема в том, что могут быть имена с пробелами вроде ...

25257 Ah You, C.J.

Мне сказали, что я должен использовать grep, но я не знаю, как это сделать.

3
задан 23 August 2011 в 00:25

1 ответ

grep не подходит для такой задачи, потому что это - средство поиска, но если я понимаю правильно проблему, можно использовать sed, как в следующем примере:

sed 's/^\([0-9]\+\) \(.*\)$/\1;\2;/' input-file >output-file

Чтобы профилактически проверить, что все строки соответствуют вышеупомянутому шаблону, выполните следующую команду

sed -n '/^\([0-9]\+\) \(.*\)$/!p' input-file

это ничего не должно возвращать.

3
ответ дан 1 December 2019 в 16:45

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

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