1

ファイルをサーバーからローカルに移動するために、次のpowershellがあります。パスが見つかりません。パスが280文字+ファイル名が30~70文字程度と長いです。何をすべきか?

$destDir = "C:\test\Files\"
$csv = import-csv 'C:\test\FilesWithPath.csv'

#For each line in the CSV
$csv | % {                                                           

            robocopy $_.SourceFilePath $destDir $_.SourceFileName 
        }
4

3 に答える 3

1

信用はCBに行く

これは、Robocopy で LONG ファイル パスを処理するコードです。

$destDir = "C:\test\Files\"
$csv = import-csv 'C:\test\FilesWithPath.csv'

#For each line in the CSV
$csv | % {                                                           

            robocopy $_.SourceFilePath $destDir $_.SourceFileName 
        }
于 2013-05-24T15:07:13.130 に答える
0

この問題に対処する 1 つの可能な方法はsubst、親ディレクトリをドライブ文字に移動し、そこからファイルをコピーすることです。

$csv | % {
  $i = $_.SourceFilePath.LastIndexOf('\')
  $d = $_.SourceFilePath.SubString(0, $i)
  $f = $_.SourceFilePath.SubString($i+1)

  subst T: $d
  Copy-Item "T:\$f" $destDir
  subst T: /d
}
于 2013-05-24T15:30:18.097 に答える