2011-12-08 45 views
1

我想基於名稱使用的參數來創建一個文件夾,因此,例如:Powershell的新項目目錄與參數作爲文件夾名稱的一部分

$Website = "test" 
    new-item \\172.1.1.1\C`$\Folder\$Website_Archive -type directory 

的_Archive需要是部分的文件夾名稱,但我無法弄清楚如何通過包含_Archive的$網站。

這裏是我的錯誤:

新建項目:項目與指定名稱\ 172.1.1.1 \ C $ \文件夾\已經存在。 在行:2字符:9 +新項目< < < < \ 172.1.1.1 \ $ C` \文件夾\ $ Website_Archive型目錄 + CategoryInfo:ResourceExists:(\ 172.1.1.1 \ C \文件夾\:字符串)[New-Item],IOException + FullyQualifiedErrorId:DirectoryExist,Microsoft.PowerShell.Commands.NewItemCommand

如果我從行中刪除'_Archive',它將創建名爲「test」的文件夾。我假設它正在查找$ Website_Archive的參數,但沒有找到它,因此它試圖重新創建根文件夾。我怎樣才能獲得傳入文件夾名稱的參數?

謝謝!

BB

回答

4

只是逃避下劃線與反引號

new-item "\\17.1.1.1\C`$\Folder\$Website`_Archive" -type directory 
3

要麼逃跑按JNK的答案,與$(...)

new-item "\\17.1.1.1\C`$\Folder\$($Website)_Archive" -type directory 
3
從什麼@JohnL提到

除了附上$網站,我更喜歡字符串格式,特別是涉及很多變量時:

"\\172.1.1.1\C`$\Folder\{0}_Archive" -f $Website 
+0

除了清晰度之外,這種方法還有什麼好處嗎? – JNK

+0

@JNK在這種情況下,清晰度。但它的意思是你可能知道構建字符串。 – manojlds

+0

我確實意識到它,但不知道是否有理由更喜歡使用雙引號進行內聯。我發現通常更容易閱讀。 – JNK

相關問題