sed + sedが値を正しく置き換えるかどうかを確認する方法

sed + sedが値を正しく置き換えるかどうかを確認する方法

以下は、ファイル内で一致するキー値を置き換える方法の良い例です。

str="192.2.34.40:2181,192.2.34.34:2181,192.2.34.32:2181,192.2.34.52:2181,192.2.34.53:2181"
sed -i "s~^[[:space:]]*zookeeper\.connect.*~zookeeper.connect=$str~" /opt/server.properties

はい

more /opt/server.properties
zookeeper.connect=192.2.34.40:2181,192.2.34.34:2181,192.2.34.32:2181

sed コマンドを実行した後、次のようになります。

more /opt/server.properties 
zookeeper.connect=192.2.34.40:2181,192.2.34.34:2181,192.2.34.32:2181,192.2.34.52:2181,192.2.34.53:2181
 

しかし、値が正しく置き換えられていることを確認できますか?

もちろん、検証を追加することもできます。

sed -i "s~^[[:space:]]*zookeeper\.connect.*~zookeeper.connect=$str~" /opt/server.properties
[[ $? -ne 0 ]] && echo "sed failed" && exit 1

しかし、ゼロを提供する標準出力にすべてのエラーが含まれているかどうかはわかりません。

関連情報