中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 用批处理取得“我的文档”路径
作者:
标题: 用批处理取得“我的文档”路径 上一主题 | 下一主题
9zhmke
中级用户




积分 355
发帖 99
注册 2003-1-6
状态 离线
『楼 主』:  用批处理取得“我的文档”路径

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%

2008-3-22 19:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
huangwl
新手上路





积分 5
发帖 5
注册 2009-5-3
状态 离线
『第 2 楼』:  

真接在取值时就取对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%

2009-5-4 10:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: