Заменить значение в таблице

У меня есть несколько таблиц, для которых мне нужно заменить поле, которое имеет случайную позицию в каждой таблице.

Для информации, таблица представляет собой поля, разделенные точкой с запятой, и я хотел бы заменить поле «данные» на «ГОД-МЕСЯЦ-ДЕНЬ» .

Пока что я пробовал:

sed -i 's/datum/YEAR-MONTH-DAY/g' input > output

Но он просто выводит пустой файл.

0
12.07.2016, 21:17
1 ответ

Как проницательно заметил Steeldriver в комментариях, вы сказали sed -i редактировать файл на месте . В результате sed не будет выдавать никаких результатов, и перенаправление > поместит это ничего в выходной файл.

Либо оставьте флаг -i и примите, что входной файл будет обновлен на месте:

sed -i 's/datum/YEAR-MONTH-DAY/g' input

, либо сбросьте флаг -i и используйте перенаправление, чтобы поместить обновленное содержимое в выходной файл :

sed    's/datum/YEAR-MONTH-DAY/g' input > output
2
28.01.2020, 02:34

Теги

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