如何將檔案/資料夾路徑分配給終端中的變數

如何將檔案/資料夾路徑分配給終端中的變數

假設我有以下路徑:

/home/$USER/Downloads/My Folder

我嘗試將上面給定的文件路徑分配給變量FILE_NAME,如下所示,

FILE_NAME=/home/$USER/Downloads/My Folder
$FILE_NAME

輸出是:

bash: /home/$USER/Downloads/My :No such file or directory

如何解決這個問題?

答案1

如果路徑包含空格字符,則必須使用引號:

FILE_NAME="/home/$USER/Downloads/My Folder"

答案2

問題在於名稱中嵌入的空白。解決此問題的最簡單方法是用引號將完整路徑字串括起來(即,在您的情況下FILE_NAME="/home/${USER}/Downloads/My Folder"
使用的原因"是因為您使用 $USER ,這需要替換,但'不會發生這種情況。

第二個問題是您將如何使用該變數。在您的範例中...我假設您從命令中刪除了 cd ...但是...要使用變數...您可能還應該在其使用周圍使用 "

所以...我猜你的用途... cd "$FILE_NAME"

相關內容