次の構成ファイルがあります。env.gc.txt
export SERVER_GC_OPTS="-verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:{{hbase_log_dir}}/gc.log-`date +'%Y%m%d%H%M'`"
-`date +'%Y%m%d%H%M'`
以下を含む行から構文を削除しようとしています。SERVER_GC_OPTS
sed -i '/SERVER_GC_OPTS/ s/-`date +'%Y%m%d%H%M'`//g'
または
sed '/SERVER_GC_OPTS/ s/-\`date +'%Y%m%d%H%M'\`//g'
しかし、成功しませんでした。
-`date +'%Y%m%d%H%M'`
1行から構文を削除するのに最適で正しい方法は何ですか?
(注:perl
シングルライニングもオプションです)
期待される出力env.gc.txt
export SERVER_GC_OPTS="-verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:{{hbase_log_dir}}/gc.log"
ベストアンサー1
コマンドで使用された一重引用符はスクリプトをdate
破損しました。sed
この試み:
sed '/SERVER_GC_OPTS/s/-`date \+.*"$/"/' env.gc.txt
-`date +
これにより、二重引用符が終わるまで文字列とすべての項目が削除されます。