我正在考慮爲cygwin編寫一個腳本,將其轉換爲從Windows資源管理器複製的Windows目錄。Shell - 在命令行參數中讀取反斜槓
例如
cdw D:\working\test
等於
cd /cygdrive/d/working/test
但似乎對shell腳本,在參數的所有backslashs被忽略,除非使用單引號'D:\working\test'
或雙backslashs D:\\working\\test
。
但在我的情況下,這將是非常不便的,因爲我不能簡單地粘貼目錄名稱在命令行來執行腳本。
有沒有什麼辦法可以使cdw D:\working\test
工作?
\是bash中的轉義字符,所以我認爲你運氣不好。 – 2012-08-05 06:16:57
你可以編寫一個shell腳本作爲標準輸入路徑。但是,您必須運行不帶參數的'cdw',然後將路徑粘貼爲輸入。 – PhilMasterG 2012-08-05 06:22:49
一個警告,在'cdw'作爲單獨的腳本運行的情況下,它將作爲單獨的進程運行。雖然'cdw'可能實際上是'chdir'到正確的位置,這不會影響調用它的進程的當前目錄。您需要將'cdw'定義爲一個函數。 – 2012-08-05 09:14:44