2016-11-08 7 views
0

フォルダ内のすべてのファイルにライセンスの宣言を追加しようとしています。それを行うためのショートカット/ linuxコマンドがありますか?特定の拡張子のファイルにこれを行うことができれば、それはさらに優れたものになります。フォルダ内のすべてのファイルに行を追加するにはどうすればよいですか?

編集:これは、@のvimshaの回答に基づいて、私の最後のコマンドだった: find . -type f -name "*.js" -exec sh -c 'echo "/* @flow */\n$(cat $0)" > $0' {} \;

+0

のvimを使用しています。ライセンスをレジスタに入れる。 vimのすべてのファイルを開くか、quickfixウィンドウを使用します。ファイルを先頭にレジスタを挿入するマクロを記録し、 ':wn'を実行してマクロを終了します。マクロを実行します。 –

答えて

5

CDフォルダにと

find *.txt -exec sh -c 'echo "license " >> $0' {} \; 

コマンドの上に次のコマンドを実行して「TXT」拡張子を持つすべてのファイルを検索し、それらに "license"という文字列を追加します。あなたがしたい拡張子とは、ファイルの先頭に追加するには

を追加するテキストにそれを変更することができます。

find *.txt -exec sh -c 'echo -e "license\n$(cat $0)" > $0' {} \; 
+0

しかし、ライセンスは通常、ファイルの先頭にありますか? – vagoberto

+0

@vagoberto OPは、ライセンス情報のどこに行く必要があるのか​​を言いません。最初に移動する必要がある場合は、上記のコマンドを少し変更することで行うことができます。 – usha

+0

@Vimsha、それを上に追加したいと思います。あなたが私たちにどのように見せてくれますか – codefx

関連する問題