2017-08-13 145 views
1

我的tcsh中運行此腳本在另一個命令調用結果: 目標:當前目錄獲得目錄名和UNIX

set dir_name = basename $PWD | tr -d '\n' 

git reset --hard $dir_name 

的回報名字,但我在第一線得到了錯誤。

我該如何解決?

回答

1

我在想誰還在使用tcsh! :)

set dir_name = `basename "$PWD" | tr -d '\n'` 
git reset --hard "$dir_name" 

雖然,我不認爲「| tr -d'\ n'」是必需的。如果您當前的目錄名稱中有空格,請使用雙引號,這樣您就不會被佔用。

在sh或bash的,而如果你正在寫劇本,我建議你同樣的事情,使用方法:

dir_name="$(basename "$PWD")" 
git reset --hard "$dirname" 

,如果你不需要重用DIR_NAME:

git reset --hard "$(basename "$PWD")" 
+0

一點也沒有」工作。我得到錯誤「Ilegal變量名稱」 – Alex

+0

什麼'echo「dirname:$ dir_name PWD:$ PWD」'return? 另外,哪個命令給出錯誤? – keithpjolley