sedコマンドで変数に指定したパスを削除するスクリプトを作成したい

OKWave 2007年12月14日 14時00分

  • このエントリーをはてなブックマークに追加
sedコマンドでの変数の使用について

moddir=aaa/bbb/ccc/
sed -e "s/$moddir//g"

として、変数に指定したパスを削除するというスクリプトを作成 したいのですが、


sed : -e 表現 #1 「s」へのオプション未知数です

とエラーが出てしまいいろいろ考えては見たのですが、どうにも うまくいかず困っています。

この場合、どのような方法をとればうまく変数に設定した内容が エラーが出ずに指定できるようになるのでしょうか?

よろしくお願い致します。

良回答

変数を展開した結果にある '/' をコマンドの区切りと見てしまっているのが原因なので、


sed -e "s#$moddir##g"

とでもしてみてください。
別に#でなく、@でも,でもお好みのキャラクタをどうぞ。

  • このエントリーをはてなブックマークに追加
関連キーワード
OS

SpecialPR

  • 「奉行シリーズ」の電話サポート革命!活用事例をご紹介

    「ナビダイヤル」の「トラフィックレポート」を利用したことで着信前のコール数や
    離脱数など、コールセンターのパフォーマンスをリアルタイムに把握するに成功。詳細はこちらから

  • デジタル変革か?ゲームセットか?

    デジタルを駆使する破壊的なプレーヤーの出現、既存のビジネスモデルで競争力を持つ
    プレイヤーはデジタル活用による変革が迫られている。これを読めばデジタル変革の全体像がわかる!