compact.exe 및 파일 형식을 무시하려면 .bat가 필요합니까?


1

작업 스케줄러를 사용하여 며칠마다 배치 파일을 실행하여 백업 드라이브에서 파일을 압축하여 더 많은 파일을 압축합니다.

이것이 내가 사용하는 것입니다

H:
compact /c /s /i /exe:lzx
exit

예를 들어 이것을 실행하고 .7z 파일을 무시하는 방법이 있습니까? .mp4 .mkv를 목록에 추가하여 무시할 수 있습니다. 이러한 파일은 대개 압축되어 있기 때문입니다.

감사


빨리 답변하지 않아 죄송합니다. 솔루션에 감사드립니다. 그 위대한. 그래도 소스 코드 설정에 도움을 줄 수 있습니까? 폴더를 사용할 수 있습니까? H : \ Blender와 같은
ToxsickcitY

압축에 사용하는이 방법으로 실험에 참여하고 싶은지 모르겠습니다. 그러나 .. 압축으로 이상한 동작을 발견했습니다. 압축 파일을 무시할 것으로 기대하지 않고 계속 수행하는 데 시간이 걸리는 것처럼 파일을 강제로 다시 압축하는 옵션 / f가 있습니다. 다음 파일에. 예를 들어 1GB 파일을 압축하는 데 3-4 분이 소요될 수 있지만 압축이 두 번째 실행에서 동일한 파일에 도달하면 파일을 읽는 데 1-2 분이 걸릴 수 있습니다. 우리가 조정할 수있는 것이 있습니까?
ToxsickcitY

저장된 HyperV 백업 (25GB) 압축을 압축하는 데 1 시간이 걸리므로 묻습니다. 30GB에서 5GB로갑니다. 하하하지만 그 파일에 도착했을 때 내 배치를 다시 실행하면 그냥 거기에 앉아 있습니다. 전체 내용을 읽는 것을 상상하십시오. 고급 배치로 아무것도 할 수 없다면 작업 스케줄러가 해당 파일에서 덜 자주 작동하도록 설정하고 전체 드라이브 대신 폴더에서 배치 작업을 시작할 수 있습니다!
ToxsickcitY

답변:


0

당신은 사용할 수 있습니다 를 들어 / R의 일부 조건에 따라 루프를 경우 에만에 로직 압축 파일 파일 확장자가 아닌 경우.7z 간단한 사용하여 FOR루프 대체 루프 프로세스 및 파일을 지정하여 각 반복 파일 이름 값에서 파일 확장자를 얻을 수 명령으로 이름을 지정하십시오.


스크립트

set Src=H:\
for /r "%Src%" %%a IN (*) DO IF /I NOT [%%~Xa]==[.7z] compact /c /s /i /exe:lzx "%%~a"
::::for /r "%Src%" %%a IN (*) DO IF /I NOT [%%~Xa]==[.7z] IF /I NOT [%%~Xa]==[.mp4] IF /I NOT [%%~Xa]==[.mkv] compact /c /s /i /exe:lzx "%%~a"
exit

추가 자료

  • / R
  • 만약
  • 배치 대체 (FOR /?)

    또한 FOR 변수 참조의 대체가 향상되었습니다. 이제 다음과 같은 선택적 구문을 사용할 수 있습니다.

    %~nI        - expands %I to a file name only
    
  • 콤팩트

    Syntax
          COMPACT [/C | /U] [/S[:dir]] [/A] [ /I] [/F] [/Q] [filename [...]]
    
    Key
    
      filename  Specifies a pattern, file, or directory.
    

이것은 굉장한 해결책이며 EPIC을 치료합니다!, 나는 위에서 언급했습니다 .. 다른 게시물에서 살펴볼 수 있습니까?
ToxsickcitY

@ToxsickcitY- 파일 이름을 완전하고 명시 적으로 지정하기 때문에 필요하지 않다고 생각할 때 스위치를 compact /c /i /exe:lzx "%%~a"생략 하는 구문을 제공하십시오 /s. for / r이 재귀 작업을 수행하므로 모든 파일을 재귀 적으로 다시 수행 할 필요가 없습니다. 그것이 더 나아지는지 확인하지만 /i너무 제거 하고 실행하고 어떻게되는지보십시오.
Pimp Juice IT

1
답장을 보내 주셔서 감사합니다. 조사하겠습니다. 그리고 내 결과를보고하십시오.
ToxsickcitY
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.