この質問にはすでに回答があります :$(stuff)と `stuff`の違いは何ですか?
(6つの回答)
7年前に閉鎖されました。
Linux
(6つの回答)
7年前に閉鎖されました。
`command`と$(command)を使用してシェルスクリプトでコマンド出力を収集することの違いは何ですか?例:
# IP1=$(ifconfig eth0 | grep -e "inet " | cut -d: -f2 | awk '{print $1}')
# IP2=`ifconfig eth0 | grep -e "inet " | cut -d: -f2 | awk '{print $1}'`
# echo $IP1 $IP2
> 192.241.145.112 192.241.145.112
承認された回答:
主な違いは、バックティックがネストしないことです。バックティックされたコマンドを別のコマンドの中に埋め込むことはできません。 (実際には可能ですが、バックスラッシュでエスケープする必要があり、それ以降はより毛深いものになります。)それが、新しい構文$(command)
を思い付く主な動機だったと思います。 。
$(command)
構文は、ファイルの内容を補間するための便利なショートカットも提供します:$(<filename)
$(cat filename)
と同等です 。
別の違い:$()
一部の一般的なシェルではサポートされていません。