• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Q>変数をsedで編集する方法)

変数をsedで編集する方法

このQ&Aのポイント
  • Bシェル内で変数をsedで編集する方法について教えてください。
  • 変数SET_NOの.を除いた値を変数EDIT_NOに代入する方法を教えてください。
  • sedを使用してSET_NOから.を取り除いた値を変数EDIT_NOに入れる方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • talepanda
  • ベストアンサー率58% (45/77)
回答No.2

EDIT_NO=`echo ${SET_NO} | sed -e "s/\.//g"` 3行目はこの行をそのままコピーペーストしてください。 シングルクォート(shift+7)ではなくバッククォート(shift+@)です。

abekkan
質問者

お礼

うまくできました。 なるほど、今までうまくいかないことが何度かあったのですが、バッククォートを使っていなかったからだったんですね。簡単なことがわかっていませんでした。 とても助かりました。ありがとうございました。

その他の回答 (1)

  • talepanda
  • ベストアンサー率58% (45/77)
回答No.1

#!/bin/bash SET_NO=1.2.3-45 EDIT_NO=`echo ${SET_NO} | sed -e "s/\.//g"` echo "SET_NO=${SET_NO}" echo "EDIT_NO=${EDIT_NO}"

abekkan
質問者

お礼

早速の回答をありがとうございました。 しかし、実行結果は、 SET_NO=1.2.3-45 EDIT_NO=echo ${SET_NO} | sed -e "s/\.//g" となりEDIT_NOに文字列がそのまま入っていました。3行目の'を"にして、 EDIT_NO="echo ${SET_NO} | sed -e "s/\.//g"" としても同様です。また、展開しようとして EDIT_NO=eval `echo ${SET_NO} | sed -e "s/\.//g"` にしたらエラーになってしまいました。 回避方法するにはどうしたらよいのでしょうか?

関連するQ&A