有沒有辦法指定開始工作命令的工作目錄?PowerShell開始工作工作目錄
用例:
我在一個目錄下,我想打開使用Emacs編輯的文件。如果我直接執行此操作,它將阻止PowerShell,直到關閉Emacs。但是使用Start-Job嘗試從我的主目錄運行Emacs,從而讓Emacs打開一個新文件而不是我想要的文件。
我試圖使用$ pwd指定完整路徑,但腳本塊中的變量在開始任務環境中執行前未解析。所以強制解析shell上下文中的變量的方法也是可以接受的答案。
所以,這裏就是我試過,只是爲了完整性:
Start-Job { emacs RandomFile.txt }
Start-Job { emacs "$pwd/RandomFile.txt" }
這種合作的很好。 -ArgumentList正是我一直在尋找的東西。 – jdmichal 2010-02-17 18:49:27
請記住,只有當'$ workingdir'不包含空格或其他特殊字符時才能使用。 – DiscoInfiltrator 2013-02-05 18:34:33
@DiscoInfiltrator:在PowerShell中只傳遞'$ workingdir'就可以正常工作,即使嵌入空格和其他shell元字符(你可能會想到POSIX類的shell)。使用'$ dir ='C:\ Program Files \'驗證;函數foo(){set-location $ args [0]}; foo $ dir'。 – mklement0 2016-12-09 06:50:57