Как добавить текст в начало строки?

У меня есть текстовый файл, и я хочу добавить текст в первую строку. Я попробовал что-то вроде этого:

sed -i '1i\'"string" file 

Однако это вставляет новую строку в текстовый файл.

  • Столбец Unix Truncate в файле csv
  • команда для извлечения данных между двумя строками
  • Как выбрать строки в зависимости от того, сколько раз подряд число присутствует в столбце?
  • Как извлечь строки, если соответствует одна из двух строк соответствия?
  • Расширенный поиск и замена программы
  • конвертировать шестнадцатеричные в двоичные
  • Как подсчитать, сколько разных слов у меня есть в файле, в столбце
  • возвратные строки, содержащие числа в диапазоне в определенном столбце
  • 2 Solutions collect form web for “Как добавить текст в начало строки?”

    Это должно работать с GNU sed:

     sed -i '1s/^/string/' file 

    он отличается от вашего решения тем, что он не добавляет новую строку.

    контрольная работа

    Перед запуском команды содержимое файла таково:

     some text here already 

    После выполнения команды:

     stringsome text here already 

    Другой способ (похожий на мой ответ в этом вопросе ):

     printf 'string' | paste -d'\0' - infile > outfile 

    или:

     printf string | cat - infile > outfile 

    или:

     { printf string; cat infile; } > outfile 
    Linux и Unix - лучшая ОС в мире.