2015-02-06 1 views
0

아침, $ path에있는 zip 파일을 스캔하여 $ dest에 정보의 이름과 함께 개별 정보 파일을 만드는 powershell 코드 섹션이 있습니다. 파일은 $ path의 zip 파일과 동일합니다.다른 위치에 동일한 이름의 폴더가있는 정보 파일 만들기

$path = 'C:\Users\X\Desktop\Powershell\Zip' 
$dest = 'C:\Users\X\Dekstop\info\' 

Get-ChildItem -Path $path -Recurse -exclude '*.info' | ForEach { [System.IO.File]::WriteAllText($dest+ $_.Name + ".info", $_FullName)} 

코드는 정보를 적절한 제목과 잘 파일을 생성하지만 내가 가진 문제는, 그것 또한 복사 정보 파일에 원래 zip 파일 및 페이스트를의 이름입니다. 이상적으로이 zip 파일을 비우는 것이 좋습니다.

여기에 대한 도움이 필요하십니까? 나는 몇 가지 것들을 바꿔 치기를 시도했는데 어떻게해야 하는지를 알지 못한다.

감사합니다.

답변

0

나는 당신이 무엇을하려고하는지 잘 이해하지 못합니다. 그러나 WriteAllText 메서드는 두 개의 인수 (또는 세 개이지만 사용자의 경우 두 개)를 사용합니다. 첫 번째 인수는 경로에 대한 것이고 두 번째 인수는 파일의 내용입니다. MSDN에서 확인할 수 있습니다.

왜 이렇게하려고하지 않습니까? (내가하려는 것을 이해한다고 가정 할 때) 나는 "* .zip"을 포함 시키거나 .info 파일을 제외한 모든 파일을 처리합니다.

$path = 'C:\Users\X\Desktop\Powershell\Zip' 
$dest = 'C:\Users\X\Dekstop\info\' 

Get-ChildItem -Path $path -Recurse -exclude '*.info' -Include '*.zip' | 
    ForEach { New-Item -Path "$dest\$($_.Name + ".info")" -ItemType File } 
+0

불쌍한 묘사에 사과드립니다. 생성 된 정보 파일의 이름은 zip 파일의 이름을 따서 지정됩니다. 그러나 zip 파일의 이름은 정보 파일 내에서 발생하는데, 이는 내가 제거하려고하는 것입니다. 그래서 나는 그들 안에 아무것도없이 zip 파일 이름을 딴 정보 파일을 남겼습니다. – user3586898

+0

제안 된 코드를 시도하지 않은 것 같습니까? – notjustme

+0

나는 그것을 시도하고 동일하게 발생했습니다. – user3586898