2014-09-03 6 views
0

폴더에 약 500 개의 파일이 있습니다. 모든 파일에 4KB 데이터를 연결하려고합니다. 일괄 처리를 사용하여 "for /r %i in (*) do type 4KB file.txt >> %i배치를 사용하여 파일의 마지막 n 문자를 제거하십시오.

이제는 원래 상태로 되돌리려합니다. 많은 시간을 엽니 다.

나를 내가 다시 원래 상태로 되돌릴 수있는 방법을 알려 주시기 바랍니다.

+1

이 파일의 내용과 제거하고자하는 내용에 대한 몇 가지 예를 들려 줄 수 있습니까? 또는 현재 상태 및 결과로보고 싶은 상태. – DarkLite1

+0

대부분 이진 파일입니다. 4KB 파일은 추가 된 4KB마다 업로드 속도를 테스트하기 위해 추가하려는 텍스트 파일입니다. 그것은 우리의 소원 일 수 있습니다. – debiansse

+1

4KB 데이터를 연결하기 전에 다른 폴더에있는 모든 파일의 백업을 만들고 원래 폴더를 삭제하고 원래 상태로 되돌리려는 경우 백업 폴더의 이름을 변경하십시오. – Aacini

답변

0

첫째,이 작업의 어려움이 파일에 추가 된 실제 문자열에 따라 달라집니다.

Get-ChildItem [your path here] | ForEach-Object { 
$TempVar = Get-Content $_ | Select-string -Exclude "Something that uniquely matches the string you want to remove" 
$TempVar | Set-Content $_ } 

은 다른 방법 : - 난 그냥 확인 할 수있는 충분한 시간이 없어

Get-ChildItem [your path here] | ForEach-Object { 
$Length = ($_.ToCharArray) - 4096 #As you have 4KB, exactly? 
$Newfile = ($_.ToCharArray() | Select -first $Length) -join "" 
$NewFile | Set-content $_ 

} 

두 시도는 인코딩, 파일 구조 등에 영향을 미칠 수있는이 같은 유해한 것으로 간주 될 수있다. 파일의 중요도가 높으면 백업하는 것이 좋습니다.

관련 문제