回答:
あなたはそれをするsedために使うことができます:
sed -i.bak 's/^/##/' file
これにより、行の先頭(^)がに置き換えられ##ます。
では-i.bakスイッチ、sedインプレースのファイルを編集しますが、拡張子を持つバックアップコピーを作成します.bak。
sed 's/^\(.*\)$/##\1/'いましたが、これはずっといいです。
perlを使用してこの問題を解決します
perl -e 'while (<>) {print "##$_"}' < infile > outfile
-pスイッチも便利ですperl -pe 's/^/##/' infile > outfile。(-i[extension]ターゲットファイルをインプレースで置き換えるスイッチもあります。)perldoc.perl.org/perlrun.html#%2a-p%2a
pythonのマッピング関数とstdinのリダイレクトで行うことができます:
$ cat input.txt
lorem ipsum
quick brown fox
hello world
$ python -c 'import sys;print "".join(map(lambda x: "##"+x,sys.stdin.readlines()))' < input.txt
##lorem ipsum
##quick brown fox
##hello world
出力を新しいファイルに保存し、元のファイルの代わりに使用します
sed 's/^/##/' -i file。この場合、間違った方向に進むことができないため、これが優先されます。他の場合では、このコマンドを組み合わせてdiff -u file.bak file違いを確認することができます(必要に応じてをパイプ処理しますless)。動作することが確認されたら、バックアップを削除できます。それ以外の場合は、単純なで復元できますmv file.bak file。