【发布时间】:2018-11-23 18:16:00
【问题描述】:
首先我要做的是 我有一个 CSV 文件,其中包含要传递给 Robocopy 的参数列表
我用 Import-csv 打开它并将其传递给 robocopy - 我发现有些文件夹我无法复制 - 为了阻止错误,我将它们排除在外 - 但发现我需要在将它们传递给之前将它们拆分机械复制。我想要做的是引用它们类似于 CSV 引用 - 这样拆分不会在引号内拆分 所以 split ("My Documents,""Bad, Path""") 给出了
My Documents
Bad, Path
而不是
My Documents
Bad
Path
我在想一个可能的调查方法是通过一些类似 CSV 的处理来管道它 - 我不确定从哪里开始找到可以做到这一点的命令
这是我的测试代码
import-csv "R:\t.csv" | where { $_.class -eq "PC1" } | % {
$_.DirExclusions
$_.FileExclusions
$DirExclusions = $_.DirExclusions
$FileExclusions = $_.FileExclusions
$DirExclusions
$FileExclusions
if ($DirExclusions -ne "" ) { $XD ="/XD" }
if ($FileExclusions -ne "" ) { $XF ="/XF" }
robocopy "$($_.Folder)" "R:\Backups\TEST" *.* /r:0 /w:1 $XD $DirExclusions.split(",") $XF $FileExclusions.Split(",")
}
CSV 文件
类,文件夹,DirExclusions,FileExclusions PC1,C:\Users\e156479,".*,My 文档,""Hard, Path""",ntuser
输出显示它排除了什么
-------------------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-------------------------------------------------------------------------------
Started : Thu Jun 14 14:07:32 2018
Source : C:\Users\e156479\
Dest : R:\Backups\TEST\
Files : *.*
Exc Files : *ntuser*
Exc Dirs : My Documents
Hard
Path
.*
Options : *.* /COPY:DAT /R:0 /W:1
实际代码更改了路径,以便处理 \ 和 C$ 类型的共享,以便备份路径对于所有源目录都是一致的 - 我已删除所有处理以使我的问题显而易见
【问题讨论】:
标签: powershell