无忧启动论坛

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

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

[复制链接]
跳转到指定楼层
1#
发表于 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
************************************************************
怎样才能够使两种情况都成功?谢谢







2#
发表于 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
回复

使用道具 举报

3#
发表于 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 很给力!

查看全部评分

回复

使用道具 举报

4#
 楼主| 发表于 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
回复

使用道具 举报

5#
发表于 2023-7-5 17:02:40 | 只看该作者

使用万能的PECMD最简单,

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

点评

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

评分

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

查看全部评分

回复

使用道具 举报

6#
 楼主| 发表于 2023-7-5 17:04:26 | 只看该作者
conlin888 发表于 2023-7-5 17:02
使用万能的PECMD最简单,

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

我试一试 谢谢
回复

使用道具 举报

7#
 楼主| 发表于 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 ...

很好  很简洁 非常感谢
回复

使用道具 举报

8#
发表于 2023-7-5 17:30:54 | 只看该作者
不要弄这些复制,直接把两个桌面映射下用同一个就可以了

点评

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

使用道具 举报

9#
 楼主| 发表于 2023-7-5 18:36:06 | 只看该作者
9zhmke 发表于 2023-7-5 17:30
不要弄这些复制,直接把两个桌面映射下用同一个就可以了

不是很明白哦

点评

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

使用道具 举报

10#
 楼主| 发表于 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-----是绝对路径
回复

使用道具 举报

11#
发表于 2023-7-5 21:16:06 | 只看该作者

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

点评

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

使用道具 举报

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

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

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-25 20:04

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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