远程服务器A上映射了一个B的共享文件夹为X盘,并在X盘建了个1.rar的文件,在本地执行:
invoke-command -session $s -scriptblock{[system.io.file]::exists(“x:\1.rar”)}
返回false,
或执行invoke-command -session $s -scriptblock{get-childitem x:\}
提示找不到x驱动器,
请问老师,如何检查A上有1.rar,并与本地上1.rar比较MD5?
2 Answers
判断文件是否存在:
test-path X:\111\222\FileName.docx
获取MD5:
dir “映射盘路径” -File -Recurse | Get-FileHash -Algorithm MD5 | ConvertTo-Json | Out-File d:\hash-list.json
“映射盘路径”可以是目录,也可以是文件
判断文件和MD5都有历史提问的,我也是从站内搜索学习到的,这里内容挺多的,多用搜索功一般自己就能搞定。
invoke-command远程执行会提示找不到映射盘,
直接本地执行即可,不需要使用invoke-command远程执行。
这个问题的主要症结在于用户@pwshroad 没有从本地直接访问共享目录,需要在远程机器上才能访问共享目录,所以才可能选择了在远程机器上挂载。
然后核心问题就变成了invoke-command中访问不到挂载的X目录,这是因为你的invoke-command使用的权限,没有通过远程机器传递给共享目录,这之间有一个【权限代理】的概念,需要额外的配置。
请参考另外两篇帖子:
抱歉是我没有理解提问~
谢谢Mooser Lee,学习了。
是这样子的,谢谢了。