PowerShell小技巧之观察UNC路径
程序员文章站
2022-08-29 17:45:05
许多命令能支持unc路径,但是unc路径在脚本中看起来很奇怪。看看下面代码:
ps> test-path -path \\127.0.0.1\c$
tru...
许多命令能支持unc路径,但是unc路径在脚本中看起来很奇怪。看看下面代码:
ps> test-path -path \\127.0.0.1\c$ true
它返回了真,证明unc路径存在。接着改变当前的路径指向一个非文件系统路径接着测试:
ps> cd hkcu:\ ps> test-path -path \\127.0.0.1\c$ false
一样的路径但现在却获得了失败。这是因为unc路径没有包含盘符,而ps需要根据盘符去分配当前合适位置。如果当前路径没有包含在磁盘路径下,powershell将假定当前选择的位置。所以当你改变当前目录到注册表,ps将试图从当前注册表获取unc路径,这就是错误原因。
更糟的是有些莫名其妙的原因,当你在使用“net use”做网络映射,查看驱动命令时ps可能会让你迷糊。
这里有一个简单的解决办法,当你在命令中使用unc路径,首先要考虑当前所在unc路径位置,这将避免此问题:
ps> test-path -path filesystem::\\127.0.0.1\c$ true ps> cd hkcu:\ ps> test-path -path \\127.0.0.1\c$ false ps> test-path -path filesystem::\\127.0.0.1\c$ true
如果你担心”net use”产生盘符麻烦,请预先使用 “filesystem::”做好相应的措施。将能彻底解决问题。
支持所有ps版本
推荐阅读
-
Powershell小技巧之使用WMI查询插上的U盘
-
Powershell小技巧之系统运行时间
-
Powershell小技巧之使用Copy-Item添加程序到开机启动
-
Powershell小技巧之使用-F方法带入数据
-
Powershell小技巧之使用WMI测试服务响应
-
Powershell小技巧之播放WAV声音
-
Powershell小技巧之使用Jint引擎在PowerShell中执行Javascript函数
-
Powershell小技巧之通过EventLog查看近期电脑开机和关机时间
-
Powershell小技巧之使用Get-ChildItem得到指定扩展名文件
-
PowerShell小技巧之启动远程桌面连接