Powershell 如何检查和创建共享(隐藏)管理目录?

Powershell 如何检查和创建共享(隐藏)管理目录?,powershell,scripting,new-item,Powershell,Scripting,New Item,我有几个文件服务器,我想创建一个路径,如果它不存在。。。简单对吧?我想是的,但是路径是沿着一个隐藏的管理共享 就在我认为自己在编写一个简单问题的脚本方面越来越得体的时候,我的$h@$@却被一股脑地吸引住了 下面是我划掉的代码: Cls #check for fileshare $servers = get-content C:\Temp\test.txt forEach ($server in $servers) { $shareTest = Test-Path "\\$Server\Shar

我有几个文件服务器,我想创建一个路径,如果它不存在。。。简单对吧?我想是的,但是路径是沿着一个隐藏的管理共享

就在我认为自己在编写一个简单问题的脚本方面越来越得体的时候,我的$h@$@却被一股脑地吸引住了

下面是我划掉的代码:

Cls
#check for fileshare
$servers = get-content C:\Temp\test.txt

forEach ($server in $servers) {
$shareTest = Test-Path "\\$Server\Share$\Test"

if($shareTest){
Write-Host "Path Exists on $server"
}
Else{
New-Item -Path "\\$Server\Share$\" -Name Test -ItemType Directory

Write-Host "Path Exists on $server"
}
}
我收到错误消息:

新项目:路径不是合法形式。 第5行字符:7

这大概是因为路径中有一个$。我不知道如何逃离它,或者我需要做什么巫毒来使它工作

这在不同的脚本中出现过几次,我想在我流血之前把它钳制掉


谢谢大家。

我遇到过一些奇怪的情况,通过变量展开对“$”进行了奇怪的解释。您可以通过字符串标记化来解决这一问题:

$server = 'hiyo'
'\\{0}\{1}' -f $server, 'share$'

您的路径语法在PowerShell v5上适用。这可能是一个时间问题。这是全部代码还是只是一个简化的示例?在newitem命令之前和之后,尝试使用sleep语句几秒钟。