![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-27 05:22 |
共 47,812 主题排行 / 349,912 发帖 / 今日 2 篇 / 48,264 会员排行 |
| 其它操作系统综合讨论区 » [已解決]如何用命令指定不同用戶名下的同名文件路徑? |
| 可打印版本 1,222 / 9 |
| 第1楼 superadam | 发表于 2007-08-20 10:42 |
| 初级用户 发帖 51 积分 113 | |
|
[已解決]如何用命令指定不同用戶名下的同名文件路徑? 如何用DOS命令指定不同用戶名下的同名文件?
問題如下﹕ 一﹑參考﹕ 1﹑電腦的OS(操作系統)=XP﹔系統盤C盤。 2﹑當前用戶有﹕001﹑002﹑003﹑。。。等等均為管理員用戶。 二﹑問題﹕ 如何用一句命令將以下N個路徑中的文件復制到一個文件夾中? C:\Documents and Settings\001\Favorites\*.* C:\Documents and Settings\002\Favorites\*.* C:\Documents and Settings\003\Favorites\*.* C:\Documents and Settings\user\Favorites\*.* 謝謝各位的幫忙﹐非常感謝~~ [ Last edited by superadam on 2007-8-21 at 08:52 AM ] |
|
| 第2楼 akin520 | 发表于 2007-08-20 11:32 |
| 初级用户 发帖 30 积分 71 | |
|
for /l %%a in (1,1,100)
|
|
| 第3楼 Climbing | 发表于 2007-08-20 14:32 |
| 铂金会员 发帖 2,753 积分 6,962 来自 河北保定 | |
|
用for命令提取下面这个命令的显示结果:
dir "c:\Documents and Settings" /b /d |
|
| 第4楼 superadam | 发表于 2007-08-20 16:03 |
| 初级用户 发帖 51 积分 113 | |
|
謝謝﹐用dir "c:\Documents and Settings" /b /d已可以提到用戶名了﹐但用for命令怎么提取下面这个命令的显示结果?我試了好几次都不行﹐請Climbing及各位大俠請再次幫忙﹐至為感謝﹗
[ Last edited by superadam on 2007-8-20 at 04:05 PM ] |
|
| 第5楼 itolaiai | 发表于 2007-08-20 17:43 |
| 初级用户 发帖 11 积分 25 | |
|
路过`
[ Last edited by itolaiai on 2007-8-21 at 05:05 PM ] |
|
| 第6楼 Climbing | 发表于 2007-08-21 08:19 |
| 铂金会员 发帖 2,753 积分 6,962 来自 河北保定 | |
|
基本上如楼上所写,也可以这样:
for /f "usebackq delims=" %i in (`dir /b/d "c:\documents and settings"`) do xcopy /e/i "c:\documents and settings\%i\Favorites" "x:\target" x:\target表示目标目录。 |
|
| 第7楼 superadam | 发表于 2007-08-21 08:50 |
| 初级用户 发帖 51 积分 113 | |
Originally posted by Climbing at 2007-8-21 08:19 AM: 我現在采納的答案如下﹕ for /f "usebackq delims=" %i in (`dir /b/d "c:\documents and settings"`) do xcopy /e/i "c:\documents and settings\%i\Favorites" "x:\target" 非常感謝樓上兩位的回復﹐使用Climbin的方法后問題已完全解決﹐但是我現在還一個問題﹐能否繼續請教一下Climbin大哥﹐這個"usebackq delims="跟"delims="有何不同語法?如何來解釋? [ Last edited by superadam on 2007-8-21 at 09:31 AM ] |
|
| 第8楼 Climbing | 发表于 2007-08-21 09:31 |
| 铂金会员 发帖 2,753 积分 6,962 来自 河北保定 | |
|
usebackq我是这样理解的:使用反引号(`)括起将来执行的命令序列,正常情况下是使用单引号(')来括起命令,但有时候命令参数中需要用到单引号或者双引号(这时就会造成单双引号的混乱),这时候最好就是使用usebackq参数,然后使用反引号来括起命令,就不会产生这种困扰了。
至于“delims=”参数,则是用来指定字符串分隔符的,for /f命令主来用来提取一个字符串中的字段,既然有字段的区分,就要有分隔字段的符号,默认是空格或者Tab,你可以使用delims=来指定你自己要使用的分隔符,而在本例中,你当然不希望使用任何分隔符,所以指定delims=空。 这个,看微软的for /?就可以查到了,尽管它的解释让人感觉很晕,但时间长了自然就明白了。 |
|
| 第9楼 yjd | 发表于 2007-08-21 09:32 |
| 初级用户 发帖 76 积分 156 | |
|
运行cmd输入for /?你应该看到东西了
|
|
| 第10楼 superadam | 发表于 2007-08-21 09:33 |
| 初级用户 发帖 51 积分 113 | |
|
好的﹐語法我先看一下﹐有不明問題再請教您~~
謝謝Climbing抽出你寶貴的時間來回復﹐你回帖真及時﹐謝謝﹐問題已成功解決了﹐真的﹐真的非常感謝﹗ 這個問題可以結帖了﹐請管理員幫我結帖﹐謝謝~~:D [ Last edited by superadam on 2007-8-21 at 09:35 AM ] |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |