2015-06-04 29 views

回答

3

不,這是正確的做法:

#!/bin/bash 

VAR_VERSION_NUMBER="1.3" 
cd /path/to/file/${VAR_VERSION_NUMBER}/more/path 

的東西從你的榜樣缺失:在變量名(VAR_VERSION_NUMBER)的前

  1. 美元符號($)。
  2. 在賦值中變量名和等號(=)之間不應有空格。
  3. 在花括號中包圍變量名是一種很好的做法,但在此不需要。

還要注意的是,一旦腳本結束,shell退出,你會還給你開始原來的目錄。cd命令的作用是有限的外殼裏,你腳本正在運行中,而不是外殼您正在啓動您的腳本。

+0

謝謝!所以如果這個路徑是中間的,它會是cd/path/$ VAR_PATH /?我之所以這樣,是因爲腳本運行時沒有美元符號 –

+0

它將是'cd/path/$ {VAR_PATH}/blah'。您需要美元符號,並且如果要在字符串內部插入變量,則需要大括號。 – quarterdome

+0

通常,ALL_CAPS變量僅用於UNIX系統或供應商應用程序信息。另外,我會寫'var_path =/path/to/dir; var_file =「$ var_path/filename」(或類似的)。 (一個非常小的點;-))祝大家好運。 – shellter

相關問題