无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 5821|回复: 29
打印 上一主题 下一主题

会批处理命令的朋友请教

[复制链接]
跳转到指定楼层
1#
发表于 2007-6-14 18:13:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想做一个IMG格式的映像,想在运行IMG后就可以先检测本地硬盘的D分区下有无BACKUP\GHOST目录,如有则跳过检测,直接执行GHOST.exe;如没有则在本地硬盘的D分区下建立BACKUP目录,再在BACKUP目录下建立GHOST目录,请用批处理命令如何写?非常感谢!

[ 本帖最后由 wmddw 于 2007-6-14 06:40 PM 编辑 ]
2#
发表于 2007-6-14 19:24:46 | 只看该作者
if exist d:\BACKUP\GHOST goto ghost
d:
md BACKUP
cd BACKUP
md GHOST
goto end

:ghost
ghost.exe

:end
回复

使用道具 举报

3#
发表于 2007-6-14 19:39:37 | 只看该作者
全是fat分区吗?交代不清,无法回答。
回复

使用道具 举报

4#
 楼主| 发表于 2007-6-14 19:59:10 | 只看该作者
原帖由 lianjiang 于 2007-6-14 07:39 PM 发表
全是fat分区吗?交代不清,无法回答。


硬盘分区为FAT32格式。
回复

使用道具 举报

5#
 楼主| 发表于 2007-6-14 20:06:14 | 只看该作者

这是我IMG映像中自己做的批处理文件,不能通过运行,请高手指正

@echo off
lh a:\mscdex.exe /d:cb /e
lh a:\smartdrv.exe 2048
if exist D:\backup\ghost goto runghost
if not exist D:\backup\ghost mkdir -p D:\backup\ghost
goto runghost
:runghost
path a:\
Ghost.exe -CLONE,MODE=PDUMP,SRC=1:1,DST=D:\Backup\ghost\system.gho -PWD=2180 -SURE -RB
回复

使用道具 举报

6#
发表于 2007-6-14 20:17:33 | 只看该作者
if exist d:\BACKUP\GHOST
改成if exist d:\BACKUP\GHOST\nul

另 mkdir -p什么意思?没见过。
回复

使用道具 举报

7#
 楼主| 发表于 2007-6-14 20:29:49 | 只看该作者

照gmaroman101 兄弟给的批处理更改完全通过运行,非常感谢!

@echo off
lh a:\mscdex.exe /d:cb /e
lh a:\smartdrv.exe 2048
if exist D:\backup\ghost goto runghost
d:
md backup
cd backup
md ghost
goto runghost

:runghost
path a:\
Ghost.exe -CLONE,MODE=PDUMP,SRC=1:1,DST=D:\Backup\ghost\system.gho -PWD=2180 -SURE -RB
回复

使用道具 举报

8#
发表于 2007-6-14 20:29:56 | 只看该作者
MKDIR(MD)... 不存在 D:\backup\ghost 这文件夹时建立它!

-p 只能问楼主了!
回复

使用道具 举报

9#
 楼主| 发表于 2007-6-14 22:38:10 | 只看该作者

暂停后任意键重新启动用批处理该如何写?

暂停后任意键重新启动用批处理该如何写?

[ 本帖最后由 wmddw 于 2007-6-14 10:54 PM 编辑 ]
回复

使用道具 举报

10#
发表于 2007-6-14 22:38:45 | 只看该作者
楼上各位兄弟写的都不错啊,我也来无聊一下:
if exist d:\backup\ghost\nul goto backup
md d:\backup
md d:\backup\ghost
goto backup

:backup
path a:\
ghost.exe -clone,mode=pcreate,src=1:1,dst=1:2\backup\ghost\system.gho -sure -rb
回复

使用道具 举报

11#
发表于 2007-6-14 22:40:53 | 只看该作者
原帖由 wmddw 于 2007-6-14 08:06 PM 发表
@echo off
lh a:\mscdex.exe /d:cb /e
lh a:\smartdrv.exe 2048
if exist D:\backup\ghost goto runghost
if not exist D:\backup\ghost mkdir -p D:\backup\ghost
goto runghost
:runghost
path a:\
...


注意那个 -pwd=2180 的意思是密码为2180,恢复的时候要输入密码的
回复

使用道具 举报

12#
 楼主| 发表于 2007-6-14 22:42:42 | 只看该作者
原帖由 lianjiang 于 2007-6-14 08:17 PM 发表
if exist d:\BACKUP\GHOST
改成if exist d:\BACKUP\GHOST\nul

另 mkdir -p什么意思?没见过。



- p 可以是一个路径名称。此时若路径中的某些目录尚不存在, 加上此选项后, 系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。
回复

使用道具 举报

13#
发表于 2007-6-14 22:43:58 | 只看该作者
原帖由 wmddw 于 2007-6-14 10:38 PM 发表
暂停后任意键重新启动用批处理该如何写?


在要暂停的地方加一行
pause

[ 本帖最后由 yanghere 于 2007-6-14 10:56 PM 编辑 ]
回复

使用道具 举报

14#
发表于 2007-6-14 22:50:48 | 只看该作者
原帖由 wmddw 于 2007-6-14 10:42 PM 发表



- p 可以是一个路径名称。此时若路径中的某些目录尚不存在, 加上此选项后, 系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。  


dos下md命令好像没有-p的参数吧,起码也要写成/p,不过刚刚在虚拟机中试过了,不行
在dos中不能同时创建多层目录,只能分两行命令:
md d:\backup
md d:\backup\ghost
回复

使用道具 举报

15#
 楼主| 发表于 2007-6-14 23:11:40 | 只看该作者
原帖由 yanghere 于 2007-6-14 10:43 PM 发表


在要暂停的地方加一行
pause


应该还要加关机命令和重启参数吧
回复

使用道具 举报

16#
 楼主| 发表于 2007-6-14 23:18:47 | 只看该作者

暂停重启那不能用,按了几次任意键,竟然又回到调用:runghost,请高手指正

@echo off
lh a:\mscdex.exe /d:cb /e
lh a:\smartdrv.exe 2048
if exist D:\backup\ghost\system.gho goto runghost
TW /NP >NUL
echo
echo
Echo      ╭──○──○──○──○──○──○──○──╮
Echo      │                                           │
Echo      │             尤尤计算机系统维护光盘           │
Echo      │    ************************************     │
Echo      │      恢复系统到C分区(2180)自动批处理程序     │
Echo           │                                              │
Echo      │尤尤温馨提示:                                │
Echo           │    您要恢复的GHO备份文件不存在,请您在确认   │
Echo           │Windows操作系统完好时运行[B]备份系统到D分区, │
Echo      │待系统瘫痪或您认为必需时再运行[C]恢复系统到C  │
Echo           │分区,恢复密码为2180。                        │
Echo           │    祝您使用愉快!                            │
Echo      │                            尤尤制作         │
Echo           │                       Email:youxiaod@163.com │
Echo      │                          QQ:170005264       │
Echo      │                                              │
Echo      ╰━━━━━━━━━━━━━━━━━━━━━━━╯
echo      --------------------------------------------------------------
echo            
echo               按任意键重启计算机
pause
shutdown.exe /Restart

:runghost
path a:\
rem -pwd=2180
Ghost.exe -CLONE,MODE=PLOAD,SRC=D:\Backup\ghost\system.gho:1,DST=1:1 -SURE -RB
回复

使用道具 举报

17#
发表于 2007-6-15 02:36:29 | 只看该作者
shutdown.exe /Restart
晕,这又是什么呀?windows的关机程序?
回复

使用道具 举报

18#
发表于 2007-6-15 05:50:34 | 只看该作者
SMARTDRV.EXE应该无助于提高GHOST的速度,建议去掉。另外没必要启动汉字系统。
拷贝MSDOS7.1的restart过来才能重新启动

[ 本帖最后由 netwinxp 于 2007-6-15 05:53 AM 编辑 ]
回复

使用道具 举报

19#
发表于 2007-6-15 06:13:12 | 只看该作者
@echo off
path=a:\
rem lh a:\mscdex.exe /D:mscd000
rem 加载光驱驱动干啥?建议去掉
rem 加e参数较容易出现兼容问题,不推荐
rem 建议还是用mscd000,因为你那个名称很容易和磁盘中的文件或目录同名,导致冲突
rem 记得同时修改config.sys里面相应的项
if exist D:\backup\ghost\system.gho goto resto
rem 如果不存在D:\backup\ghost可能会有出错提示,但没关系
rem 不存在D:\backup\ghost\system.gho
d:
cd\
md backup>nul
rem 即使存在backup目录也不会出现出错提示
cd backup
md ghost>nul
rem 同上
rem 自己添加其他处理
goto restar
:resto
rem 恢复
A:\Ghost.exe -CLONE,MODE=PLOAD,SRC=D:\Backup\ghost\system.gho:1,DST=1:1 -SURE -RB
rem 上一句自己修改
:restar
pause Press AnyKey to restart......
rem pause可以自代提示无需echo
a:\restart.exe
rem 硬盘上必须具备两个或两个以上的FAT(包含FAT32)的逻辑盘,否则会出错
rem 必须把Ghost.exe和MSDOS7.1工具磁盘里面的Restart.exe(忘了是它还是Restart.com)拷贝到软盘中(或软盘映像中)
rem 其实如果没有restart.exe可以通过Debug来创建一个,只要一句jmp far ffff:0000就可以了

[ 本帖最后由 netwinxp 于 2007-6-15 07:23 AM 编辑 ]
回复

使用道具 举报

20#
发表于 2007-6-15 06:27:09 | 只看该作者
另外,建议把该帖转到DOS版块
回复

使用道具 举报

21#
发表于 2007-6-15 06:59:45 | 只看该作者
原帖由 wmddw 于 2007-6-14 10:42 PM 发表



- p 可以是一个路径名称。此时若路径中的某些目录尚不存在, 加上此选项后, 系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。  

在本人了解的范围内,无此用法。完毕。
回复

使用道具 举报

22#
发表于 2007-6-15 07:21:42 | 只看该作者
原帖由 u168u28 于 2007-6-15 07:00 AM 发表


应该改为
echo            
echo               按任意键重启计算机
pause
goto end
shutdown.exe /Restart

:runghost
path a:\
rem -pwd=2180
Ghost.exe -CLONE,MODE=PLOAD,SRC=D:\Backup\ ...


这样一改,shutdown.exe /Restart 不废掉了?呵呵。
回复

使用道具 举报

23#
发表于 2007-6-15 07:22:06 | 只看该作者
原帖由 u168u28 于 2007-6-15 07:00 发表


应该改为
echo            
echo               按任意键重启计算机
pause
goto end
shutdown.exe /Restart

:runghost
path a:\
rem -pwd=2180
Ghost.exe -CLONE,MODE=PLOAD,SRC=D:\Backup\ ...

这个无法重新启动,即使把shutdown.exe /Restart改成restart.exe也永远得不到执行
回复

使用道具 举报

24#
发表于 2007-6-15 07:25:58 | 只看该作者
和23楼见解相同:) 不过DOS没有shutdown这玩意儿,即使附加的也只是直接关机(有的机子还无效)
回复

使用道具 举报

25#
发表于 2007-6-15 08:04:33 | 只看该作者
原帖由 netwinxp 于 2007-6-15 07:25 AM 发表
和23楼见解相同:) 不过DOS没有shutdown这玩意儿,即使附加的也只是直接关机(有的机子还无效)


有关机和重启的外部程序。据说部分机子不支持。不过我碰到的几台都可用。
shutdown.COM s 关机
shutdown.COM r 重启

SHUTDOWN.COM 非常好的命令行ATX电源重新启动/软关机程序
好多启动盘里都有此工具。

[ 本帖最后由 lianjiang 于 2007-6-15 08:07 AM 编辑 ]
回复

使用道具 举报

26#
 楼主| 发表于 2007-6-15 08:36:23 | 只看该作者
原帖由 wmddw 于 2007-6-14 08:29 PM 发表
@echo off
lh a:\mscdex.exe /d:cb /e
lh a:\smartdrv.exe 2048
if exist D:\backup\ghost goto runghost
d:
md backup
cd backup
md ghost
goto runghost

:runghost
path a:\
Ghost.exe -CLONE, ...



如果我想将"D:\backup\ghost”不写入D分区,而是本地硬盘的最后一个分区,然后将其设为隐藏分区,我应该如何修改上述代码?请高手指点!
回复

使用道具 举报

27#
发表于 2007-6-15 09:09:15 | 只看该作者
翻帖子,翻帖子,呵呵。
再不行现成的一键备份很多。不隐藏的,隐藏分区的,hpa的都有。
另,这个帖子发的地方不对。
回复

使用道具 举报

28#
 楼主| 发表于 2007-6-15 09:17:03 | 只看该作者
原帖由 lianjiang 于 2007-6-15 09:09 AM 发表
翻帖子,翻帖子,呵呵。
再不行现成的一键备份很多。不隐藏的,隐藏分区的,hpa的都有。
另,这个帖子发的地方不对。

   

我想做一个具有自己个性的。
回复

使用道具 举报

29#
发表于 2007-6-15 09:50:02 | 只看该作者
原帖由 wmddw 于 2007-6-15 09:17 AM 发表

   

我想做一个具有自己个性的。

先学习,在超越。
回复

使用道具 举报

30#
 楼主| 发表于 2007-6-15 15:49:37 | 只看该作者
原帖由 netwinxp 于 2007-6-15 06:13 AM 发表
pause Press AnyKey to restart......
rem pause可以自代提示无需echo
a:\restart.exe



a:\restart.com

试验成功
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-15 15:27

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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