2013-05-29 28 views
1

正如您在下面看到的,%AppData%\npm被添加到系統Path變量中。我也嘗試將其添加到用戶路徑變量。文件grunt.cmd存在於目錄中,但僅在我使用絕對路徑指定時才起作用。 AKA,路徑不起作用。%Windows 2008 Server上的PATH%實際上不起作用

C:\Users\TeamCity>echo %path% 
%AppData%\npm;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows 
\System32\WindowsPowerShell\v1.0\;c:\Program Files (x86)\Microsoft SQL Server\10 
0\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\Tools\Binn\;c:\Program F 
iles\Microsoft SQL Server\100\DTS\Binn\;c:\Program Files (x86)\Microsoft SQL Ser 
ver\100\Tools\Binn\VSShell\Common7\IDE\;c:\Program Files (x86)\Microsoft SQL Ser 
ver\100\DTS\Binn\;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program 
Files\nodejs\ 

C:\Users\TeamCity>dir %appdata%\npm 
Volume in drive C has no label. 
Volume Serial Number is B845-1135 

Directory of C:\Users\TeamCity\AppData\Roaming\npm 

05/29/2013 03:14 AM <DIR>   . 
05/29/2013 03:14 AM <DIR>   .. 
05/29/2013 03:14 AM    298 grunt 
05/29/2013 03:14 AM    159 grunt.cmd 
05/29/2013 03:13 AM <DIR>   node_modules 
       2 File(s)   457 bytes 
       3 Dir(s) 23,690,498,048 bytes free 

C:\Users\TeamCity>grunt 
'grunt' is not recognized as an internal or external command, 
operable program or batch file. 

C:\Users\TeamCity>%appdata%\npm\grunt 
grunt-cli: The grunt command line interface. (v0.1.9) 

運行於:

  • 的Windows Server 2008 R2數據中心
  • Service Pack 1的
  • 64位

回答

0

有趣的是,「迎最後一搏它關閉和再次「實際上工作。或者,您可以在添加它並鍵入cmd後複製整個路徑:

> SET PATH= 

並粘貼您的路徑。

2

我不認爲你可以推遲路徑中的變量擴展。路徑中的內容按原樣使用,在搜索過程中不會重新解釋。

事實上,你必須很努力得到,在作爲%AppData%,因爲你需要做的是這樣的:

path=^%AppData^%\npm;%path% 

如果你只使用:

path=%AppData%\npm;%path% 

你'd找到實際路徑將被替換,以便路徑變爲:

C:\Users\TeamCity\AppData\Roaming\npm;C:\Windows\system32; ... 
相關問題