$ 1の部分文字列を別の部分文字列に置き換え、それを変数に設定しようとしています。
(testStringReplacementファイルとして保存)
#!/bin/bash
secondString="Sara"
myString= "${1/Suzi/$secondString}"
echo "myString = $myString"
その後、これを実行すると、次のようになります。
bash testStringReplacement Suzi
わかりました:
testStringReplacement: line 3: Sara: command not found
myString =
何が間違っているのか誰が見ることができますか?文字列置換値と同じ文字列が必要ですmyString
(この場合は「Sara」に設定する必要があります)。交換を実行しているようですが、コマンドで実行してみてください。
答え1
その後にスペースがあります=
。
myString= "${1/Suzi/$secondString}"
これにより、空白に設定されていると解釈され、次のmyString
コマンドを実行してみます。${1/Suzi/$secondString}
しなければならない
myString="${1/Suzi/$secondString}"