2016-04-13 19 views
0

私はファイルを検索し、見つかったすべてのパスをHTMLファイルに置き換え、ファイルへのパスとハッシュを入れようとしています。sedのマッチグループを別の文字列に置き換えるにはどうすればいいですか?

私はこのような何かを検索したい:

templateUrl: 'path/to/the/file/file.html'; 

私はこのようなファイル名を置き換えたい:

templateUrl: 'path/to/the/file/file.HASH.html'; 

私はすでにこのことについて同様の質問を見ました。

sed '/templateUrl:/s|/[\.html);]\+|HASH.html|' myFile 

これは私が間違っているのは何templateUrl: 'pathHASH.htmlo/the/file/file.html';

に上記の文字列を置き換えます。現在、私は期待どおりに動作しませんsedの「ドラフト」を、持っていますか?

答えて

0

これを試してみてください:

$ sed 's/^\(templateUrl:.*\)\(\.html\)/\1.HASH\2/' <<< "templateUrl: 'path/to/the/file/file.html';" 
templateUrl: 'path/to/the/file/file.HASH.html'; 

最初の部分は.html件までtemplateUrl:始まると.html文字列を、次の捕捉され、.HASHを撮影した文字列の間に挿入されます。

関連する問題