Tôi đã nhận được kết quả mong đợi với `...`, nhưng thất bại với $ (...)
kill $(ps ux | grep S..\.tcl | grep -v grep | awk '{print $2}')
Illegal variable name.
kill `ps ux | grep S..\.tcl | grep -v grep | awk '{print $2}'`
(kill expected processes)
Bằng cách googling, tôi thấy một số người nói rằng họ có thể hoán đổi cho nhau, nhưng nó không phải là ví dụ này. Vậy, sự khác biệt giữa $ (...) và `...` trong Bash là gì?