ターゲットファイルの各行の先頭に特定の文字列があり、bashが単一行になるようにファイルをコピーする必要があります。したがって、スクリプトやループがなく、bolだけがあります。
bol - 一群の人々を襲う
これを行うには、個人的にgrepプログラムのコマンドを使用する必要があります。可能なあらゆる方法で解決していただきありがとうございます。 grepを使用しないと、あまり役に立ちません。
編集:いいね、grep、sedではできません。
答え1
$ sed 's/^/specific string/' input >output
を使うべきだと言われましたgrep
。まあ...
$ sed 's/^/specific string/' input | grep . >output
答え2
リクエストにGNUがない場合、sed
またはGNUがある場合grep
:
grep --label="SPECIFIC STRING" --null -H ^ input_file.txt
PS:気になるなら、いいえ、真剣な答えではありません。
答え3
たぶんこれは(テストされていません):
cat file.txt | sed 's/^\(.*\)$/new text at line start\1/g' > file-copy.txt
awk
代わりに使用することも可能です。sed
答え4
具体的に要求したので、bash
次の行があります(長い縮小にもかかわらず)。
{ while IFS= read -r line ;do printf "%s %s\n" "SPECIAL" "$line" ; done < input.txt ; [ -n "$line" ] && printf "%s %s\n" "SPECIAL" "$line" ; }
しかし、もちろん、より短い方法は次の通りですawk
。
awk '{print "SPECIAL ",$0}' input.txt