複数のsed文のsedインライン編集が失敗する

複数のsed文のsedインライン編集が失敗する

#SB#与えられた文字列に一致する各行の先頭に追加したい

inkron.sh

sed -i -e'/test1/s/^/#SB#/g' file1
sed -i -e'/test2/s/^/#SB#/g' file1
sed -i -e'/test4/s/^/#SB#/g' file1

ファイル1

/apps/pmserver $ cat file1
00 45 /ser/bat/ab.sh test1
00 45 /ser/bat/ab.sh test2
00 45 /ser/bat/ab.sh test3
00 45 /ser/bat/ab.sh test4
/apps/pmserver $

私はコーエンシェルを使用しています。

sed新しいファイルとして出力できますが、スクリプトに複数の文がある場合(上記の図を参照)、機能しません。エラーが発生しました。

sed: Not a recognized flag: i

私がやりたいことは、crontab特定のチームに属するいくつかのアイテムをコメントアウトすることです。 test1 test2...は対応するファイル名なので、閉じる必要があります。

ベストアンサー1

sedのパラメータは-iGNU拡張です。 GNU sedを実行していない可能性があるため、-i認識されないというエラーが発生します。

おすすめ記事