Board logo

标题: 用批处理取得“我的文档”路径 [打印本页]

作者: 9zhmke     时间: 2008-3-22 19:30    标题: 用批处理取得“我的文档”路径

echo  取出注册表中“我的文档”所在位置:
for /f "skip=4 tokens=1* delims=*" %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Personal') do set doc=%%i
rem 下面两句分别根据有无系统文件夹变量取字符串,以得到正确位置,并把系统变量转成路径
set doc=%doc:~20%
if "%doc:~0,6%"=="AND_SZ" set doc=%doc:~7%
for /f "delims=*" %%i in ('call echo %doc%') do set doc=%%i
rem 下面3句去掉路径前的字符串和后面的所有空格
:intercept
if "%doc:~-1%"==" " set "doc=%doc:~0,-1%"&goto intercept
echo %doc%
作者: huangwl     时间: 2009-5-4 10:43
真接在取值时就取对MY document的路径,将后将系统变量转成路径
如下

Set p=HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
For /f "skip=4 tokens=2*" %%a IN ('reg query "%p%" /v personal') DO Set "MyDocumentPath=%%b"
For /f "delims=*" %%i IN ('Call echo %MyDocumentPath%') do set MyDocumentPath=%%i
echo %mydocumentpath%