sed: -e 式 #1、文字 44: 終了していない 's' コマンド

sed: -e 式 #1、文字 44: 終了していない 's' コマンド

指示については:

sed -i 's|/group/dairy/phuongho/garuns/out|$XXX/out/' exp/garuns.vpz

これの何が問題なのか教えていただけますか? 質問のタイトルに示されているエラーを受け取りました。

答え1

エラー メッセージにあるように、コマンド|を終了するための終了文字がありませんs

sed -i 's|/group/dairy/phuongho/garuns/out|$XXX/out/|' exp/garuns.vpz
                                                    ^

シングルクォートを使用しているため、$XXX文字どおりファイルに置換されることに注意してください。変数 XXX代わりに二重引用符 ( sed -i "...") を使用してください。

また、パターンには先頭のスラッシュがありますが、末尾のスラッシュがなく、置換ではその逆になっています。(これも必要なことかもしれませんが、奇妙に思えます。)

関連情報