在 CentOS(或其他 Linux 發行版)的 shell 腳本中,反引號()用于執行命令替換。當你需要在反引號內嵌套使用另一個反引號時,可以使用
$()語法,因為
$()` 更易讀且可以嵌套。
例如,假設你想在一個目錄下創建一個子目錄,并將子目錄的名稱存儲在一個變量中。你可以這樣做:
parent_dir="/home/user"
sub_dir="subdir"
# 使用反引號嵌套
mkdir "`basename \"$parent_dir\"`/$sub_dir"
# 使用 $() 嵌套
mkdir "$(basename "$parent_dir")/$sub_dir"
在這個例子中,我們使用了 basename
命令來獲取父目錄的基本名稱,然后將其與子目錄名稱連接起來。注意,在使用反引號時,我們需要對內部的雙引號進行轉義,以避免語法錯誤。而在使用 $()
時,我們可以直接使用雙引號,無需轉義。因此,推薦使用 $()
進行命令替換和嵌套。