2011-03-02 46 views
2

不顯示我有下面的代碼片段文件名在cmd中

$svc_Files = gci | Where {$_.extension -eq ".svc"} 
write-host "Building WSDL ..." 
$cmd_svc = "`"C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\x64\SvcUtil.exe`"" 
Foreach ($svc_File in $svc_Files) 
{ 
    write-host "& $cmd_svc http://id.web/Services/$svc_File?wsdl" 
} 

的問題是,文件名不顯示。但是,一旦我刪除「?wsdl」,文件名將顯示。

我怎樣才能得到文件名以最終顯示「?wsdl」?

回答

2

試試這個:

write-host "& $cmd_svc http://id.web/Services/$svc_File`?wsdl" 

你也可以這樣做:

寫 - 主機 「?& $ cmd_svc http://id.web/Services/ $($ svc_File)WSDL」

+2

注到@Valamas :反引用是Powershell的scape特性,就像反斜槓\是C#的景觀特徵。 – tiago2014 2011-03-02 02:26:28

+0

第一個選項不起作用,_是問題。 – JasonMArcher 2011-03-03 23:53:19

+0

下劃線在變量名中很好... $ A_B =「Fred」; 「$ A_B'你好」 返回 FredHello – 2011-03-04 15:45:18

3
write-host "& $cmd_svc http://id.web/Services/${svc_File}?wsdl"