0

次のような通常の値を使用する場合a=10

sedの検索/置換を機能させることができます

  sed -e "s/xxx/$a/g" a.txt

しかし、私が次のような変数を使おうとするとa=http://xyz.com

sed -e "s/xxx/$a/g" a.txt動かない...

私が推測するそのスローする未知のオプションエラーは、変数の上に存在するエスケープ文字によるものです

4

2 に答える 2

4

これを試して:

sed -e "s@xxx@$a@g" a.txt 
于 2013-03-25T12:23:46.497 に答える
4

awkを使用すると、文字列に/、@、改行などの任意の文字を含めることができます。

$ a="http://xyz.com"
$ echo "<xxx>" | awk -v a="$a" '{gsub(/xxx/,a)}1
<http://xyz.com>
于 2013-03-25T13:53:37.500 に答える