変数を使用してタッチでファイルを作成する

変数を使用してタッチでファイルを作成する

この変数があります。

toto=123456

なぜtouch "$toto.hihi.log"動作し、次のファイルを生成するのですか?123456.hihi.log

しかし、touch "$totohihi.log"何も起こりませんでしたか?

ベストアンサー1

あなたはする必要があります

touch "${toto}hihi.log"

問題は、中かっこがなければ、シェルが変数名に何文字があるかを知ることができないことです。したがって、すべての有効な文字を名前の一部と見なします。この場合は、以前のすべてです.。つまり、シェルは存在しない変数を使用します$totohihi

通常、シェルオプションを使用して何が起こっているのかを判断するのに-x役立ちます。

set -x
touch "$totohihi.log"
    + touch .log

おすすめ記事