SDG*_*ero 5 powershell robocopy regex scp
我正在寻找使用 robocopy 将多个文件夹从目录复制到远程网络共享的解决方案。我想从包含数百个我不感兴趣的文件夹的目录中选择几个文件夹。我想使用正则表达式在 linux 中执行类似于 scp 的操作,但这在 robocopy 中不起作用:
c:\robocopy "c:\results\1319_TC1.*" "\\datastore\somefolder\"
Run Code Online (Sandbox Code Playgroud)
试试这个:
gci C:\results\1319_TC1.* | foreach-object { robocopy $_.fullname (".\datastore\somefolder\" + $_.name) }
gci C:\results\1319_TC1.*
首先获取所有匹配的文件/目录,并将它们放入管道中,其中foreach-object
处理第一个命令的所有结果。它将自动复制每个结果的完整路径(结果目录的完整路径)并将它们放入 .\datastore\somefolder\ 及其原始文件夹名称,例如:
C:\results\1319_TC1.123456
->C:\results\datastore\somefolder\1319_TC1.123456
大括号中的那个东西会将目标目录名称和原始文件夹名称放在一起。
编辑:
我刚刚看到你的目标目录应该是 UNC 路径。Robocopy 接受 UNC 路径(即使路径名超过 256 个字符)。你只需要在我的命令中替换(".\datastore\somefolder\"
为("\\datastore\somefolder\"
。所以正确的命令是:
gci C:\results\1319_TC1.* | foreach-object { robocopy $_.fullname ("\\datastore\somefolder\" + $_.name) }
归档时间: |
|
查看次数: |
38802 次 |
最近记录: |