2つのモードの間に変数を持つcreate_databaseスクリプトがあります。
##from script
v1=
v2=
##variables
これらのパターン間の行を削除しようとすると機能しませんsed
(明らかにここでは機能しません。これは行を削除せず、コマンドの実行後にスクリプトの内容が同じであることを意味します)。
sed -i '/##from script/,/##variables/d' /data3/create_database
私は別のスクリプトでこのコマンドを使用していましたが、うまくいきますが、ここではなぜ同じ結果が得られないのかわかりません。どんな提案がありますか?
答え1
おそらく、sedが "-i"オプションをサポートしていないまれなシステムの1つに閉じ込められている可能性があります。
走りましょう
sed '/##from script/,/##variables/d' /data3/create_database > someotherfile
次に、ファイルの内容が期待したものと同じであることを確認します。
ファイルのアクセス権を確認しましたか?