Как я могу прикрепить строку к началу или концу файла без использования канала или перенаправления в сценарии оболочки? - PullRequest
0 голосов
/ 03 марта 2011

И исходный файл пуст.Есть ли какая-нибудь команда?Я пробовал sed, но он не работает на пустом файле.Есть идеи?

Ответы [ 2 ]

2 голосов
/ 03 марта 2011

Вы можете использовать редактор строк:

ed tmp.tmp << EOC
a
PUT STRING HERE
.
w
q
EOC
1 голос
/ 03 марта 2011

Я предполагаю, что это для ставки на бар или что-то подобное.

Вот несколько вариантов:

shuf является частью Linux coreutils. Может принимать строку и выходной файл в качестве аргументов.

shuf -e -o outputfile 'this is some text'

Вы также можете использовать это для вывода только новой строки, затем используйте sed -i.

Это делает нечто подобное. dd создает файл с одним нулевым байтом, затем sed записывает в него строку.

dd if=/dev/zero of=outputfile bs=1 count=1
sed -i 's/.*/foo\n/' outputfile

Конечно, есть Perl:

perl -e 'open $fh, ">", "outputfile"; print $fh "foo\n"'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...