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

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

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

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

  • Заменить скомпилированные символы юникода
  • Как удалить фиксированную часть некоторых строк из текстового файла?
  • Как я могу рассчитывать строки с ключевыми словами определенной длины?
  • Разбор большого текстового файла, а затем запись в отдельные файлы вывод каждого
  • Редактирование текстового файла
  • сопоставить первый столбец файла a с параграфами файла b
  • Добавить числа в поле в файле
  • Как отобразить последний абзац текстового документа?
  • 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 - лучшая ОС в мире.