Pertanyaan ini sudah memiliki jawaban di sini :Apa perbedaan antara $(stuff) dan `stuff`?
(6 jawaban)
Tutup 7 tahun yang lalu.
Linux
(6 jawaban)
Tutup 7 tahun yang lalu.
Apa perbedaan mengumpulkan output perintah dalam skrip Shell menggunakan `command` dan $(command)? Misalnya:
# 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
Jawaban yang Diterima:
Perbedaan utamanya adalah backtick tidak bersarang:Anda tidak dapat menyematkan satu perintah backtick di dalam yang lain. (Sebenarnya Anda bisa, tetapi Anda perlu melakukan backslash-escape mereka, dan itu menjadi lebih berbulu dari sana.) Itu, saya percaya, motivasi utama untuk datang dengan sintaks yang lebih baru $(command)
.
$(command)
sintaks juga menyediakan pintasan yang nyaman untuk menginterpolasi konten file:$(<filename)
setara dengan $(cat filename)
.
Perbedaan lain:$()
tidak didukung oleh beberapa shell umum.
Tidak Dapat Menjelaskan Perilaku Acl?
Temukan Nomor Baris Yang Berisi Pola Menggunakan Pembatas Regex Khusus?