Board logo

标题: [分享]方便装机人员批处理 [打印本页]

作者: 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
虽然没太大用处,不过对我很有用
我还会继续优化功能
请大家给我给点意见或建议
可以的话最好给点代码或命令之类的
因为我毕竟是初学者