내 목표는 zip 파일의 내용을 별도의 디렉토리로 추출하는 배치 파일을 만드는 것입니다. 이 질문과 관련된 모든 파일은 동일한 플래시 드라이브에 있습니다.
다음 명령은 드라이브 문자와 잘 작동합니다. i:\
**i:\7z x i:\zips\new_app.zip -oi:\apps\new_app**
내가 다른 컴퓨터에 플래시 드라이브를 넣고 드라이브 문자가 아닌 경우 어떤 일이 발생 i:\
하지만, f:\
또는 g:\
또는q:\
내가 만들 수있는 변수가 있습니까?
답변
교체 I:\
와 함께 %CD%
. %CD%
환경 변수는 현재 디렉토리 경로를 보유하고 있습니다.
%CD%\7z x %CD%\zips\new_app.zip -o%CD%\apps\new_app
배치 파일을 두 번 클릭하면 파일이있는 디렉토리에서 시작됩니다. 배치 파일이 USB 스틱의 루트에있는 경우 USB 스틱이 마운트 된 드라이브 문자 또는 모든 드라이브 문자 %CD%
로 설정 I:\
됩니다.
답변
USB 드라이브에서 .BAT 파일을 실행하는 경우 .BAT 파일에 상대적인 경로 및 / 또는 파일 만 드라이브 문자를 지정할 필요가 없습니다.
예 : Unzip.BAT가 USB 드라이브의 루트에 있고 .zip이 “secret”이라는 폴더 아래의 “classified docs”라는 폴더에있는 경우
\secret\classified docs\
답변
이 디자인은 폴더 구조 내에서 사용할 수 있습니다.
"%cd:~0,2%\<full path>"