xx
次の内容を含むファイルがあります。
@base_url = "http://dmstaffing-stage.herokuapp.com/"
私はこの行を削除するためにsedを使用したいと思います(何も置き換えません)。私はこのsed技術を次のようないくつかの異なるラインでうまく使用しました。
sed -i 's/require "selenium-webdriver"//' xx
しかし、@base_url行を使った試みはうまくいきません。 http://の"または//が混乱しているようですが、修正できないようです!
私は試した:
$ sed 's/@base_url = "http://dmstaffing-stage.herokuapp.com/"//' xx
sed: -e expression #1, char 23: unknown option to `s'
$ sed 's/@base_url = \"http://dmstaffing-stage.herokuapp.com/\"//' xx
sed: -e expression #1, char 24: unknown option to `s'
$ sed 's/@base_url = "http:\/\/dmstaffing-stage.herokuapp.com/"//' xx
sed: -e expression #1, char 58: unknown option to `s'
しかし、それらのどれも働かなかった。
ベストアンサー1
前述のように、別の区切り文字を使用するか、脱出する削減。最後の試みで最後のスラッシュをエスケープできませんでした。
指摘したとおりツイートをサイトに埋め込む、dot
脱出も同様です。
そして含む@テデンsed
必要でない場合は、正規表現の代わりに固定文字列が選択されますgrep -Fxv
。行全体と一致することを確認してください。ひっくり返す-F
-x
-v
しかし、単純な(非常に簡単な)ベンチマークがtime -v
より人気があるようですsed
。 (GNUバリアント。)
sed 's/@base_url = "http:\/\/dmstaffing-stage\.herokuapp\.com\/"//' xx
空白行を残さずに完全に削除するには、次のようにします。
sed '/@base_url = "http:\/\/dmstaffing-stage\.herokuapp\.com\/"/d' xx
|
+--- Delete