Существует довольно много способов как это сделать. Я не расскажу ничего нового, а соберу информацию в одну тему (статью) чтобы можно было новичкам, та и опытным пользователям можно быстро вспомнить.
Вставить текст в файл через утилиту cat в Unix/Linux
Утилита cat, позволяет записывать данные (текс) в файл. Приведу несколько примеров.
-=== ПРИМЕР 1 ===-
# cat > /etc/yum.repos.d/docker.repo <<EOF
TEXT HERE
EOF
Где:
- TEXT HERE — произвольный текст, который нужно записать в файл.
- EOF — это команда для завершения записи в файл.
-=== ПРИМЕР 2 ===-
$ cat >> filename.txt
TEXT HERE
^D
Где:
- TEXT HERE — произвольный текст, который нужно записать в файл.
- ^D — Сочетание клавиш «CTRL-D» для завершения записи в файл.
-=== ПРИМЕР 3 ===-
Можно использовать:
$ sudo sh -c 'cat << EOF >> file_name
TEXT
HERE
EOF'
Или можно использовать что-то типа:
$ cat > tmp.txt <<TXT
> fdsfsdf
> dsf
> f
> s
> ff
> sf
> f
> s
> TXT
Т.е вхождение у меня — TXT. Начало и конец записи регулируется именно этими символами.
Вставить текст в файл через утилиту echo в Unix/Linux
Чтобы вставить какой-то текст в файл с помощью команды echo, можно так (данная команда затрет файл и вставит именно то, что передадите ей):
# echo "this is a test text" > /home/$USER/test.txt
Или, можно дописать в самый конец файла следующей командой:
# echo "this is a test text" >> /home/$USER/test.txt
Вставить текст в файл через утилиту printf в Unix/Linux
Чтобы вставить какой-то текст в файл с помощью команды printf, можно так (данная команда затрет файл и вставит именно то, что передадите ей):
$ printf "hello" > filename
Или, можно дописать в самый конец файла следующей командой:
# printf "this is a test text" >> /home/$USER/test.txt
Или много строчный текст:
$ printf "hello > fsdf > dsf > > fsfd > > dsff > " > file_name
Вставить текст в файл через утилиту tee в Unix/Linux
Например, сделать это можно следующим образом:
$ tee -a file_name << EOF TEXT HERE EOF
Вставить текст в файл через python в Unix/Linux
Можно это сделать (создать файл и прописать в него):
with open("file_name.txt", "a") as file_name: myfile.write("TEXT HERE")
Если появятся еще идеи как можно это сделать (SED — не всчет), дополню данную статью.
Вот и все, статья «Вставить текст в файл в Unix/Linux» завершена.
Спасибо утилита printf то что нужно!