2016-08-30 14 views
0

/var/www /フォルダから正規表現文字列を削除する方法が非常に多く試されており、動作させることはできません。たぶんこれは文法上の間違いなのでしょうか?ディレクトリ内のファイルから特定の文字列を削除する

sed -i '//@require\(dirname\(__FILE__\).'\/dir\/file.php'\);/g/d' /var/www/* 


awk '{gsub("/@require\(dirname\(__FILE__\).'\/dir\/file.php'\);/g", "");}' /var/www/* 
+0

で[編集]あなたの質問我々は助けることを試みることができるように簡潔な、テスト可能なサンプル入力と期待される出力を含めます君は。 –

答えて

1

は、私はあなたにも)@require(dirnameは(FILEの出力をエスケープするべきだと思いますか - 簡単な方法を - あなたはまた、異なる区切り記号を使用することができます。

regex = /@require\(dirname\(__FILE__\).'\/dir\/file.php'\);/g 

をしようとしました。 。SEDとにかく、私はその文字をエスケープすることをお勧め-iオプションで結構です

[[email protected] ~]$ echo "line starts in here /var/www/dir/file.txt oh yes" | sed 's|/var/www/dir/file.txt||g' 
line starts in here oh yes 

をまとめると:。。

  1. エスケープ検索文字列内のsedの区切り
  2. とスタートの... 'sedの
+0

本当にありがとうございました! – Voldie

関連する問題