【发布时间】:2012-07-12 13:47:08
【问题描述】:
我有一个制表符分隔文件,第一列包含文件的当前位置,第二列包含我希望将文件复制到的位置。
我如何创建一个脚本来自动执行此操作,例如 Powershell 或 Windows Batch?
非常感谢
布伦丹
【问题讨论】:
标签: powershell batch-file copy
我有一个制表符分隔文件,第一列包含文件的当前位置,第二列包含我希望将文件复制到的位置。
我如何创建一个脚本来自动执行此操作,例如 Powershell 或 Windows Batch?
非常感谢
布伦丹
【问题讨论】:
标签: powershell batch-file copy
如果您在 CSV 中的列命名为 Path 和 Destination,则以下操作有效:
Import-Csv foo.csv -Delimiter "`t" | Copy-Item
如果您的列名称不同(此处为File 和TargetPath),您需要进行一些翻译:
Import-Csv foo.csv -Delimiter "`t" | ForEach-Object {
Copy-Item -Path $_.File -Destination $_.TargetPath
}
如果您根本没有列标题,您需要告诉Import-Csv:
Import-Csv foo.csv -Delim "`t" -Headers Path,Destination | Copy-Item
批处理文件中的相同:
for /f "skip=1 tokens=1,2 delims= " %%A in (foo.csv) do (
rem ↖ that's a tab
copy "%%~A" "%%~B"
)
【讨论】:
Get-Help Copy-Item -Param Path 或查看该 cmdlet 的示例。