2014-03-25 80 views
0

我有一個Windows批處理腳本(說實話,它是一個Groovy腳本)。在這個腳本中,我確定了Cygwin安裝的根目錄。下一步是找出當前的用戶和主目錄。在Cygwin中,這將只是一個從Windows腳本獲取cygwin環境變量的值

echo $HOME 
#=> /home/Christian 

什麼來非常接近我的問題是以下問題:Get results of command from Cygwin in Batch。 我想這樣的東西執行:

"C:\cygwin[64]\bin\bash[64].exe" "echo $HOME" 

但是我收到一個

#=> /usr/bin/bash[64]: echo $HOME: No such file or directory 

這是因爲bash期待一個腳本文件,我想執行一個命令。如何才能做到這一點?沒有將命令放入腳本文件是否有可能?

我的目標是獲取Windows路徑到當前用戶主目錄,以便我可以從Windows腳本遍歷此目錄。

回答

0

發出單個命令的正確選項是-c,並且在需要使用--login執行登錄之前。

C:\>c:\cygwin64\bin\bash.exe --login -c "cygpath -w $HOME" 
#=> C:\cygwin64\home\Christian 

我找到了答案here