불행히도, 프로파일과 관련된 기본 경로에서이를 리디렉션 한 경우 배치 스크립트에서 확인할 수있는 간단한 환경 변수가 없습니다. 여기에서 환경 변수의 전체 목록 (문서화되지 않은 일부 포함)을 볼 수 있습니다.
http://ss64.com/nt/syntax-variables.html
명심해야 할 또 다른 사항은 폴더 리디렉션을 사용하여 폴더를 네트워크 공유로 이동할 수도 있다는 것입니다. 모두 사용할 수있는 "드라이브"가 필요하지 않습니다. UNC 경로 일 수 있습니다.
좋은 소식은 원하는 정보가 레지스트리의 다음 위치에 있다는 것입니다.
HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ User Shell 폴더 \ 개인
해당 User Shell Folders
키 에서 이동할 수있는 전체 폴더 세트가 있지만 Windows Batch를 사용하여 여기에서 내 문서 폴더를 읽으려면 다음과 같습니다.
reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Personal
내 컴퓨터에서 다음과 같은 출력을 생성합니다. 필요한 내용과 Windows Batch 스크립트의 성능에 따라 다소 유용 할 수 있습니다.
HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ User Shell 폴더
개인 REG_EXPAND_SZ C : \ Users \ joel \ Documents
vbscript를 사용해 볼 수도 있습니다.
Set wshshell = CreateObject("WScript.Shell")
Documents = wshShell.SpecialFolders("MyDocuments")
또는 Powershell :
[Environment]::GetFolderPath('MyDocuments')
이것은 결국 Windows에서도 bash를 통해 사용할 수 있지만 (실제로!) 일관되게 정확한 방법으로 아직 수행 방법을 보지 못했습니다.