윈 도 우 배치파일 와일드카드(*) 간단한 질문!
2018.07.08 23:50
만약에 현재 어떤 폴더에 세 파일
123.bat
abc.txt
def.txt2
이 존재하고 123.bat 의 내용이
del "%~dp0\*.txt"
라면, 그것을 실행했을 때 세 파일 중에
abc.txt 만 지워져야할 것 같은데 def.txt2 도 지워지네요?
와일드카드에 대해서 제가 크게 잘못 이해하고 있었던 것 같습니다.
*.txt 로는 def.txt2 라는 파일이 매치가 안 될 것 같은데.. 매치가 되나보네요.
* 의 올바른 의미를 설명 부탁드립니다^^
이상하게 생각되시는 분은 zip 파일을 다운받아 압축 푸시고 123.bat 를 실행해보세요.
댓글 [4]
-
이카사키 2018.07.09 00:52
-
ton3d 2018.07.09 01:16
빠른 답변 감사합니다! 제가 하려던 질문 그대로네요..
그런데 정도는 버그라고 봐야하지 않을까요?
첨엔 귀신에 홀린 줄 ㅡㅡ..
-
캔두잇 2018.07.09 01:27 버그 까지는 아니고, 구 DOS의 8.3형식으로 프로그래밍되어 있어서 도출되는 호환성의 문제라고 봐야합니다.
긴 파일명 지원에 같은 기능을 구현 가능한 윈도우 기반의 스크립트 언어(CSCript, autohotkey, autoit 등...)을 이용해서 해결하시는게 좋을 듯 합니다.
-
익덕이 2018.07.09 08:05
테스트 해 봤습니다.
전 정확히 abc.txt 파일만 삭제됩니다.
그냥 dir *.txt 명령어도 정확히 abc.txt 파일만 나옵니다.
윈 10 RS5 입니다.
윈 10 LTSB 2016 에서도 정확히 됩니다.
전에 비슷한 질문을 하신분이 있는데.
이 와일드카드가 옛날 도스때는 8.3형식이라서 큰 문제가 없었지만...
현재 확장자 4개 및 그 이상을 지원하는 윈도우 체계에서는 이 글을 참조하시면 될 것 같습니다.
https://windowsforum.kr/qna/6492949
DIR로 질문하셨지만 같은 내용입니다.