Как записывать данные по одному из файлов tmp в конечный выходной файл, используя для цикла?

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

 1c\ datafile no. 23 2c\ datafile is ok 

tmp2 файл,

 3c\ datafile no. 24 4c\ datafile is ok 

У меня есть файл (с именем wrong_file ), какие записи я хочу исправить из файлов tmp

 datafile no. 32 datafile is ok datafile no. 42 datafile is ok 

Мой выходной файл ( modified_file ) будет похож,

 datafile no. 23 datafile is ok datafile no. 24 datafile is ok 

Я хочу использовать цикл, который будет работать до последнего tmp-файла и записывать данные из файлов tmp в конечный файл (Output), вместо этого выполняя его вручную.

Я пытался,

 sed -f tmp1 wrong_file > file1 sed -f tmp2 file1 > modified_file 

One Solution collect form web for “Как записывать данные по одному из файлов tmp в конечный выходной файл, используя для цикла?”

Я уверен, что вы можете просто сделать:

 cat ./tmp[12] | sed -f - ./wrong_file >outfile 

По крайней мере, это не вызовет никаких проблем, если все инструкции скрипта sed специфичны для номера строки. Нет необходимости применять скрипты отдельно – вы можете объединить их все вместе и запустить сценарий сразу.

То, что вы должны сделать это вообще, указывает на дублируемую работу. Вот копия sed скрипта, которая во избежание записи любого из этих tempfiles в первую очередь и просто сканирует вход для строк, которые нуждаются в изменении, прежде чем передать весь скрипт в потоке до последнего sed за один раз:

 { sed '/^#\.tid\.setnr/!d;=;g;G' | paste -d'c\\\n' - - - ./addfile } <./mainfile | sed -f - ./mainfile 

Его выход не идентичен данным примера, поскольку он предназначен для образцов, которые вы предоставили в другом вопросе . Но это позволяет вообще не записывать сценарии модификации и посылает все команды редактирования в sed процесс, который может немедленно принять меры.

В общем, вы можете подумать, что sed процесс так же готов обработать свой ввод скрипта всеми способами, в которых он также может быть готов обрабатывать входные данные для редактирования.

  • Удалить ведущее 0 из определенного поля
  • Как извлечь XML из текстового файла
  • SED переключающие столбцы в одном файле, ограниченном,
  • Регулярные команды и команды с командой sed
  • читать значения столбца из файла и печатать один за другим
  • изменить шаблон, удалив пробелы?
  • Как я могу исправить строки, разбитые в неправильных местах?
  • Удаление строк не более или меньше полей 'N'?
  • Есть ли способ использовать апострофы в командах sed?
  • Curl url txt file, но grep каждый URL отдельно от одного файла
  • Разберите несколько тысяч строк txt в строки и столбцы
  • Interesting Posts

    shell переименовывать имена файлов с непечатаемыми символами

    Как создать кросс-платформенные команды привязки клавиатуры?

    wget для рекурсивной загрузки файлов dxf

    Убедитесь, что процесс всегда запущен

    распаковка tarball с жесткими ссылками на файловую систему, которая не поддерживает жесткие ссылки

    Как «bash» или «gnome-terminal» печатает информацию о пользователе и пути?

    Установите makeprg в gradlew

    Как узнать, что использует файловая система FUSE?

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

    Как захватить IP-адрес клиентов на мой сервер через обратный туннель ssh.

    Почему я получаю разные результаты с тем же пользователем и командой history?

    Ограничьте пропускную способность отдельных HTTP-запросов, не ограничивая общую пропускную способность

    Как установить, какая оболочка использует Midnight Commander?

    Почему входящие пакеты на интерфейсе TAP видны с помощью tcpdump, но не с iptables?

    Безопасно ли параллельно проецировать параллельное выступление A в B

    Linux и Unix - лучшая ОС в мире.