• ベストアンサー

sedコマンドでの変数の使用について

moddir=aaa/bbb/ccc/ sed -e "s/$moddir//g" として、変数に指定したパスを削除するというスクリプトを作成 したいのですが、 sed : -e 表現 #1 「s」へのオプション未知数です とエラーが出てしまいいろいろ考えては見たのですが、どうにも うまくいかず困っています。 この場合、どのような方法をとればうまく変数に設定した内容が エラーが出ずに指定できるようになるのでしょうか? よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.1

変数を展開した結果にある '/' をコマンドの区切りと見てしまっているのが原因なので、 sed -e "s#$moddir##g" とでもしてみてください。 別に#でなく、@でも,でもお好みのキャラクタをどうぞ。

mopharmuphar
質問者

お礼

なるほど、'/'以外でも区切り文字として扱ってくれるのですね。。。 勉強になりました。 真夜中に、どうもありがとうございました。 またどうぞよろしくお願い致します。

関連するQ&A

専門家に質問してみよう