$ tr ' ' '\n' <file.in
Это заменит все пробелы во входном файле символами новой строки.
Результатом будет
2
3
4
5
(и др.)
Чтобы сохранить вывод в файл:
$ tr ' ' '\n' <file.in >file.out
Просто для разнообразия :Как насчет бега:
kill -SIGTERM "$(pgrep -f firefox)"
Не уверен в регистре -нечувствительность:
kill -SIGTERM "$(pgrep -fi FirEfox)"
Несколько процессов с одинаковым именем, и вы хотите завершить первый из них:
kill -SIGTERM "$(pgrep -f firefox | head -1)"
Информация о моемpgrep
$ pgrep -V
pgrep (proctools 0.4pre1) http://proctools.sourceforge.net
The pipe should give the output of one command as an input to another.
Это правильно, но kill
не принимает никаких входных данных на стандартный ввод. Вместо этого вам нужно предоставить его в качестве аргумента командной строки:
kill -SIGTERM "$(pidof firefox)"
или:
pidof firefox | xargs kill
$(
— это расширение команды внутри оболочки, а xargs
— внешнее.
Тем не менее, у этих подходов есть ряд краеугольных случаев, например, что делать, если есть несколько pid, нет pid и т. д. --вот почему pkill существует:
pkill -TERM firefox