楼 主
多个u盘因电脑分区不同而盘符不同路径如何设置?
发表于 2007-03-11 10:21 · 中国 福建 福州 电信
初级用户
★
积分 92 发帖 26 注册 2007-03-10 07:44 19年会员 UID 81291 性别 男
状态 离线
因工作关系,经常用从自己的u盘里面拷贝文件到别人的u盘中,所用编了个批处理程序。不过,因为电脑的分区都不同,如果我把批处理文件放在自己的u盘的根目录下,需要复制的源文件的路径比较好处理,但是目标u盘的路径就不好处理了。原因就是分区不同导致u盘的盘符也不同。请问如何在目标路径中设置将需要复制的文件复制到当前u盘的下一个盘当中(在盘符不确定的时候)。就是说我用两个u盘,其中第一个u盘中有我要复制的源文件,要将其复制到另一个u盘,也就是第一个u盘盘符后面的一个u盘,但是我们都知道,在不同的电脑上两个u盘的盘符因分区的不同而有不同,所以在copy命令中写目标路径的时候不能确定得知应该写到什么盘符。谢谢。
第 2 楼
发表于 2007-03-11 10:28 · 中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212 发帖 2,478 注册 2007-02-08 23:39 19年会员 UID 79003 性别 男
状态 离线
@echo off
setlocal enabledelayedexpansion
for /f "skip=1 tokens=1,2 delims=\" %%a in ('fsutil fsinfo drives^|find /v ""') do (
set aa=%%a
set aa=!aa:~-2!
for %%i in (!aa!) do fsutil fsinfo drivetype %%i
)
pause
可以得到驱动器类型……你看看有用么?
第 3 楼
发表于 2007-03-11 12:13 · 中国 浙江 绍兴 诸暨市 电信
高级用户
★★★
Autowalk
积分 845 发帖 375 注册 2007-03-03 01:58 19年会员 UID 80606 性别 男
状态 离线
最好的办法,手动输入 ^_^!
echo off
set /p h=请输入盘符:
copy filename %h%:\
pause
[ Last edited by zhoushijay on 2007-3-10 at 11:15 PM ]
第 4 楼
发表于 2007-03-11 13:20 · 中国 湖北 武汉 电信
版主
★★★★★
积分 11,386 发帖 4,938 注册 2006-07-23 17:10 20年会员 UID 59080
状态 离线
一下代码没有测试,自己凭空写出来的,有问题请跟贴讨论。
@echo off
:: 说明:加入此批处理放在你的U盘的根目录中
:: 需要复制的文件为 text.txt
:: 要将文件复制到第二个U盘的根目录中
for /f "skip=1" %%a in ('wmic logicaldisk where "Description='可移动磁盘'" get caption') do (
if not "%%a"=="%cd:~0,2%" set "drive=%%a#"
)
if not "%drive%"=="#" (set drive=%drive:~0,2%) else (echo 没有足够的 可移动磁盘 ,请检查!&pause&exit)
copy text.txt %drive%\
pause&exit/b0
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正