하드 드라이브에 파일 목록을 작성하고 볼륨 이름을 사용하여 목록 이름을 지정하십시오.


1

그래서 이것이 드라이브에 파일 목록을 생성한다는 것을 알고 있습니다.

SET /P drive=Enter drive letter: 
tree %drive%: /a > "C:\Drivelists\%listname%.txt"

그러나 해당 목록 이름을 대체하기 위해 드라이브 이름을 자동으로 얻는 방법을 모르겠습니다. 나는 이것이 적어도 나에게 이름을 준다는 것을 안다.

wmic logicaldisk where name="%drive%:" get volumename

그러나 나는 어떻게 든 거기에서 그것을 얻을 수 있는지 또는 더 좋은 방법이 있는지 모르겠습니다. 나는 그것이 쉬운 작업이라고 생각하지만 여기서 중요한 요소를 알지 못합니다. 제안?

답변:


0

변수를 드라이브 볼륨 이름으로 설정하려면 어떻게합니까?

다음 배치 파일은 for /f명령을 사용하여이를 수행하는 방법을 보여줍니다 .

@echo off
setlocal
setlocal enabledelayedexpansion
set /p _drive=Enter drive letter:
for /f "usebackq skip=1" %%i in (`wmic logicaldisk where name^="%_drive%:" get volumename`) do (
  set _volume=%%i
  goto :done
  )
:done
@echo %_volume%
tree %_drive%: /a > "C:\Drivelists\%_volume%.txt"
endlocal

노트:

  • skip=1wmic헤더 행 을 건너 뛰는 데 사용됩니다 .
  • goto :donewmic여분의 빈 줄 을 건너 뛰는 데 사용됩니다 .
  • C:\Drivelists\ 이미 존재해야합니다.
  • 모든 드라이브에 볼륨 이름이있는 것은 아닙니다.

추가 자료

  • Windows CMD 명령 행의 AZ 색인 -Windows cmd 행과 관련된 모든 것에 대한 훌륭한 참조 자료.
  • for / f- 다른 명령의 결과에 대한 루프 명령.
  • set -CMD 환경 변수를 표시, 설정 또는 제거합니다. SET로 변경 한 내용은 현재 CMD 세션 동안 만 유지됩니다.
  • 트리 - 그래픽 트리로 그래픽 tree.Display로 드라이브 또는 경로의 폴더 구조를 드라이브 또는 경로의 폴더 구조를 표시합니다.
  • wmic -Windows 관리 인스 트루먼 테이션 명령.

고마워 매력처럼 작동합니다. 더 쉽게 사용할 수 있도록 모든 볼륨의 이름을 지정합니다. 그리고 그 링크들에 대해서도 감사하며, 그들은 미래에 도움이 될 것입니다.
Odding
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.