2011-10-19 10 views
3

처음에는이 질문이 이미 존재한다는 것을 알고 있지만, 첫눈에 내가 찾던 대답을 찾지 못했습니다.특정 파일을 삭제하기위한 배치 파일 만들기

매개 변수로 주어진 특정 파일 형식으로 여러 파일을 삭제해야하는 배치 파일을 만드는 데 문제가 있습니다. 이 파일들이 있어야하는 폴더는 첫번째 매개 변수로 정의됩니다. 읽기 전용, 숨김 및 시스템 파일도 삭제해야합니다.

지금까지 내가 이런 걸 가지고

CD %1 
IF EXIST *.%2 DEL *.%2 /F /A:H /A:S 

을하지만 그것을해야 결과를 가지고하지 않습니다 ... 은 누군가가 나를 도울 수 있습니까? 대한

답변

5

어떻게 ...

CD /D %1 
DEL *.%2 /F /A:H /A:S 

를 CD에 의한 /D 확실히 그것은 또한 현재 드라이브를 변경합니다. 기본적으로 CD는 언제 어디서든 같은 드라이브에있을 것입니다.

그러면 if exist은 무의미합니다. 삭제할 것이 없으면 DEL은 아무 것도 삭제하지 않습니다.

*.%2이 특정 확장명의 파일과 일치하는 파일 일 경우에만 실제로 사용하기 때문에 원하는지 확실하지 않습니다. 아마도 %2 만 원할 것입니다. 입니다.

그래도 작동하지 않는다면 어떻게되는지 알려주세요. 예상 결과를 말했습니다. 즉 주어진 패턴과 일치하는 주어진 디렉토리의 파일을 삭제해야합니다. 대신에 어떤 일이 발생하는지 알려주십시오.

+0

답변 해 주셔서 감사합니다. '*. % 2'방식을 사용하는 이유는 특정 파일 패턴을 가진 모든 파일을 삭제하려고하지만 가능한 모든 파일 이름을 사용하기 때문입니다. 이것을 사용하는 잘못된 방법입니까? 다른 표기법을 사용해야합니까? 배치 파일의 경우 % 2를 'bat'으로 실행하면 bat라는 파일을 찾지 못한다고합니다. (C : \ batch-files \ bat을 찾을 수 없습니다.) –

+0

그럴 경우 사용 하시겠습니까 *. % 2 –

+0

이 문제에 대해 귀찮게해서 죄송합니다. C : \ batch-files \ *. bat) 찾을 수 없습니다. 내가 끔찍한 잘못을하고 있다고 생각할 수 없습니다 ... –

-5

http://forums.techarena.in/windows-server-help/621875.htm

del /s *.tmp *.temp *.dmp 

다음 번에, 첫번째 질문을 연구.

+2

먼저 조금 더 오만하고 질문을 읽는 것은 어떻습니까? 접근 방식은 사용자 정의 패턴을 허용하지 않으며 숨겨진 파일, 시스템 파일 또는 읽기 전용 파일을 삭제하지 않으며 디렉토리로 변경되지 않습니다. –

관련 문제