标题: [分享]方便装机人员批处理
[打印本页]
作者: ph430265819
时间: 2008-4-10 00:03
标题: [分享]方便装机人员批处理
由于是初学者,这2个非常简单批处理都研究了几个晚上了还是没什么进展,老是语法错误或其他错误, 所以来求助了,望各位高手指点指点,还有就是 choice 这个命令说不是 内部或外部命令之类的,不知道是不是DOS版本问题,还是要附加什么软件的,如果是要加软件的话,最后是能够发个过来 另外求DOS命令的详细用法及语法的实例,越详细越好
下面是2个批处理的要求
第1个的功能是:
在电脑的最后一个盘下建立一个文件夹(不知道最后1个盘是什么盘,不知道盘符也不知道标卷)
建立完后可以选择并提示按什么键从启或不从启(如:按1从启,按2不从启提示完成)
如果这个文件夹不存在则建立这个文件夹,如果存在则直接跳到选择从启项那
第2个的功能是:
从某个盘下复制文件到某处(如桌面) (也是不知道源文件的盘符,但是知道卷标)
如:从U盘中COPY一个文件到桌面,我们不知道电脑有几个盘,所以也不知道U盘的盘符是什么,但是知道他的卷标啊,卷标一般是不会改的
COPY命令是很简单,问题是不知道盘符的话我就不会了,不知道怎么用卷标代替盘符
如果没有能直接达到这些功能的话,能达到相同或类似功能也可以了
最好能些得简单一点,能不用FOR就别用,FOR太深了,因为是初学者,所以太深会看不懂
Sample Text
批子完成了,分享下
这2个批子是方便装机人员的,如果经常要从U盘拷同一批数据的话,也可以修改下备份.BAT用来自己快捷从U盘拷数据
里面有3个文件分别是“一键在。。。。BAT " “ choice.exe ”和 “复制。BAT "
应该不会有人会把 “choice.exe” 看成病毒吧~~~~
把这3个文件添加到U盘或光盘等移动设备里,修改下config就可以在软件安装程序里使用 复制.BAT了
一键在。。。。BAT是用来在本地磁盘的最后盘符创建GHOST文件夹的
相信很多装机人员都是少不了这一步的吧
批子里的“ md %lastdrive%\ghost\ ”这句可以在ghost后面加上 .. 改成ghost..以提高安全性
“ if errorlevel 2 shutdown -r -t 20 ”这句
可以把“ -t 20 ”改成1秒以达到立即关机,这里设置20秒是为了防止按错可以马上用“ -A ” 来取消
复制.BAT可以修改 " find /i "可移动驱动器" " 这里,可以改成是从什么设备里复制东西的,如是U盘就是”可移动驱动器“,是光驱则是“CD-ROM 驱动器”
如果是用来快捷从U盘拷数据的话只要在copy语句的“ %pf%\ ”后面修改路径就可以了
写得这么详细,像我这样才学1星期的初学者都看得懂,应该不会有人看不懂了吧
因为还不会用附件上传,所以只能发个连接地址了 - -!
http://upload.cn-dos.net/img/257.rar
顺便发个装机软件的展示吧
http://upload.cn-dos.net/img/258.rar
[
Last edited by ph430265819 on 2008-4-12 at 08:17 PM ]
作者: abcd
时间: 2008-4-10 00:13
请修改标题
作者: ph430265819
时间: 2008-4-10 00:23
怎么改啊
改成什么样啊
作者: abcd
时间: 2008-4-10 01:00
获取最后盘符的话,似乎有个什么lastdrive的,忘记了
也可以这样获取
http://www.cn-dos.net/forum/viewthread.php?tid=36433
卷标不存在重复吧?
作者: HAT
时间: 2008-4-10 05:48
Quote: |
Originally posted by ph430265819 at 2008-4-10 12:23 AM:
怎么改啊
改成什么样啊 |
|
look:
http://www.cn-dos.net/forum/viewthread.php?tid=1415
作者: HAT
时间: 2008-4-10 06:03
//还有就是 choice 这个命令说不是 内部或外部命令之类的,不知道是不是DOS版本问题
XP系统是没有choice命令的
//还是要附加什么软件的,如果是要加软件的话,最后是能够发个过来
在本版搜索"choice.exe"
//另外求DOS命令的详细用法及语法的实例,越详细越好
google搜索"批处理内部命令"
//能不用FOR就别用,FOR太深了,因为是初学者,所以太深会看不懂
认真看了下面几个贴子之后,包你掌握for命令的常见用法:
http://www.cn-dos.net/forum/viewthread.php?tid=19331
http://www.cn-dos.net/forum/viewthread.php?tid=13592
http://www.cn-dos.net/forum/viewthread.php?tid=33751
很多贴子里面都有for的使用,如果你潜水时间够长包你掌握for的用法!
//从U盘中COPY一个文件到桌面,我们不知道电脑有几个盘,所以也不知道U盘的盘符是什么
@echo off
rem 提取U盘的盘符
set AllDrive=c d e f g h i j k l m n o p q r s t u v w x y z
cd.>%tmp%\MyDrive.txt
for %%a in (%AllDrive%) do (
fsutil fsinfo drivetype %%a: | find /i "Removable Drive">>%tmp%\MyDrive.txt
)
for /f "tokens=1,2,3,4 delims= " %%h in (%tmp%\MyDrive.txt) do (
echo %%h is a usb drive.
)
del %tmp%\MyDrive.txt
作者: ph430265819
时间: 2008-4-10 20:43
谢谢了
正在研究ing。。。。。
作者: 121872020
时间: 2008-4-11 19:17
ddddddddddddd
作者: ph430265819
时间: 2008-4-11 20:11
标题: [回复]HAT
谢谢了
根据你提供的资料我已经完成了我要的第1个批处理
作者: ph430265819
时间: 2008-4-11 20:12
搞错了
是abcd的那个帖子
要谢谢他啊
作者: ph430265819
时间: 2008-4-11 20:24
标题: [回复]HAT
跟据你提供的资料
我也完成了第2个批处理
也要谢谢你
不过你的命令里有2个错误和1个失误
第1个错误:
set AllDrive=c d e f g h i j k l m n o p q r s t u v w x y z
这里定义盘符的时候没有加 ':' 会导致后面的语句盘符路径出错
第2个错误:
fsutil fsinfo drivetype %%a: | find /i "Removable Drive">>%tmp%\MyDrive.txt
这里却多出个 ' : ' 会导致%%a参数错误
失误:
还是这个
fsutil fsinfo drivetype %%a: | find /i "Removable Drive">>%tmp%\MyDrive.txt
在"Removable Drive"这里, 因为现在的WIN都是中文版的了,所以驱动类型也用的是中文显示,而你用了英文会导致无法得到正确的信息,改成中文就可以了 一般U盘的类型为“ 可移动驱动器 ”
作者: 26933062
时间: 2008-4-11 20:33
标题模糊,扣分。。。
作者: ph430265819
时间: 2008-4-11 21:51
高级用户就知道凭自己的权利乱扣人家分
切。。。。。。。。。。

作者: HAT
时间: 2008-4-11 23:58
//因为现在的WIN都是中文版的了,所以驱动类型也用的是中文显示
俺们公司都是英文版系统^_^
作者: ph430265819
时间: 2008-4-12 19:25
希望会有人需要啊
如果觉得有用的话也希望能为我加点分以挽回我那可怜的被扣掉的6分
作者: ph430265819
时间: 2008-4-12 19:38
虽然没太大用处,不过对我很有用
我还会继续优化功能
请大家给我给点意见或建议
可以的话最好给点代码或命令之类的
因为我毕竟是初学者