找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 5018|回复: 11

[已解决] 【已解决】修改bat(复制文件到桌面)。谢谢

[复制链接]
发表于 2023-7-5 15:33:35 | 显示全部楼层 |阅读模式
本帖最后由 yyz2191958 于 2023-7-12 19:24 编辑

问题解决:
(for /f "tokens=1-2*" %%a in ('reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /s^|find "Desktop"') do @echo;%%c)>#.txt
for /f %%a in (#.txt) do XCOPY /y "%~dp0png\*.ico"  "%%a\"

***************************************************************
更加优秀代码:
for /f "tokens=1-2*" %%a in ('reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /s^|find "Desktop"') do call XCOPY /y "%~dp0png\*.ico"  "%%c\"
****************************************************
原来的问题:
已有代码:for /f %%a in (#.txt) do XCOPY /y "%~dp0png\*.ico"  "%%a\"
其中:
#.txt内容为:D:\桌面\Desktop——————这种情况成功
#.txt内容为:%USERPROFILE%\Desktop — 这种情况不成功
上面是同一电脑的不同系统
************************************************************
#.txt是读取注册表里面桌面路径生成的:
(for /f "tokens=1-2*" %%a in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /s^|find "Desktop"') do @echo;%%c)>#.txt
************************************************************
怎样才能够使两种情况都成功?谢谢







发表于 2023-7-5 16:17:35 | 显示全部楼层
这应该是变量嵌套问题,可以在xcopy前面加call。你是怎么解决的没看懂

点评

(for /f "tokens=1-2*" %%a in ('reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /s^|find "Desktop"') do @echo;%%c)>#.txt-----是绝对路径  详情 回复 发表于 2023-7-5 19:42
回复

使用道具 举报

发表于 2023-7-5 16:22:29 | 显示全部楼层
for /f "tokens=1-2*" %%a in ('reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /s^|find "Desktop"') do call XCOPY /y "%~dp0png\*.ico"  "%%c\"

点评

很好 很简洁 非常感谢  详情 回复 发表于 2023-7-5 17:07
谢谢  详情 回复 发表于 2023-7-5 16:30

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5 很给力!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2023-7-5 16:30:55 | 显示全部楼层
conlin888 发表于 2023-7-5 16:22
for /f "tokens=1-2*" %%a in ('reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion ...

谢谢

点评

使用万能的PECMD最简单, pecmd.exe "file 路径\*.ico=>%%desktop%%"  详情 回复 发表于 2023-7-5 17:02
回复

使用道具 举报

发表于 2023-7-5 17:02:40 | 显示全部楼层

使用万能的PECMD最简单,

pecmd.exe "file 路径\*.ico=>%%desktop%%"

点评

我试一试 谢谢  详情 回复 发表于 2023-7-5 17:04

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5 赞一个!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2023-7-5 17:04:26 | 显示全部楼层
conlin888 发表于 2023-7-5 17:02
使用万能的PECMD最简单,

pecmd.exe "file 路径\*.ico=>%%desktop%%"

我试一试 谢谢
回复

使用道具 举报

 楼主| 发表于 2023-7-5 17:07:55 | 显示全部楼层
conlin888 发表于 2023-7-5 16:22
for /f "tokens=1-2*" %%a in ('reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion ...

很好  很简洁 非常感谢
回复

使用道具 举报

发表于 2023-7-5 17:30:54 | 显示全部楼层
不要弄这些复制,直接把两个桌面映射下用同一个就可以了

点评

不是很明白哦  详情 回复 发表于 2023-7-5 18:36
回复

使用道具 举报

 楼主| 发表于 2023-7-5 18:36:06 | 显示全部楼层
9zhmke 发表于 2023-7-5 17:30
不要弄这些复制,直接把两个桌面映射下用同一个就可以了

不是很明白哦

点评

我想表的是,用同一个文件夹做桌面,比如我的桌面就改成:D:\我的文档\系统设置\桌面,哪套系统都用这个,就不用复制过来复制过去了  详情 回复 发表于 2023-7-5 21:16
回复

使用道具 举报

 楼主| 发表于 2023-7-5 19:42:40 | 显示全部楼层
batche 发表于 2023-7-5 16:17
这应该是变量嵌套问题,可以在xcopy前面加call。你是怎么解决的没看懂

(for /f "tokens=1-2*" %%a in ('reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /s^|find "Desktop"') do @echo;%%c)>#.txt-----是绝对路径
回复

使用道具 举报

发表于 2023-7-5 21:16:06 | 显示全部楼层

我想表的是,用同一个文件夹做桌面,比如我的桌面就改成:D:\我的文档\系统设置\桌面,哪套系统都用这个,就不用复制过来复制过去了

点评

我的正常系统————自定义 PE—————————没有办法  详情 回复 发表于 2023-7-5 21:42
回复

使用道具 举报

 楼主| 发表于 2023-7-5 21:42:08 | 显示全部楼层
9zhmke 发表于 2023-7-5 21:16
我想表的是,用同一个文件夹做桌面,比如我的桌面就改成:D:\我的文档\系统设置\桌面,哪套系统都用这个 ...

我的正常系统————自定义
PE—————————没有办法
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1|闽公网安备35020302032614号 )

GMT+8, 2026-4-19 22:19

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表