无忧启动论坛

标题: 纯dos下批处理重命名的问题 [打印本页]

作者: yjqd    时间: 2016-9-30 14:52
标题: 纯dos下批处理重命名的问题
本帖最后由 yjqd 于 2016-9-30 14:54 编辑

电脑中磁盘分区类型均为NTFS分区,DOS镜像只有三个基本文件和识别NTFS的文件和三个批处理文件

autoexex.bat 内容为:
call ntfs.bat
call ren.bat

ren.bat 内容为:
ren c:\1.txt  2.txt

grub4dos启动dos镜像后,ntfs.bat执行后ntfs分区识别正常,ren.bat执行后出现的提示是:required parameter missing

重启进pe查看,1.txt  没有被重命名为2.txt
-----------------------------------------------------------
把autoexex.bat 内容修改如下:

call ntfs.bat
call a:\ren.bat
重启进入dos  执行完命令后没出现上面的提示,重启进pe查看,1.txt已经被重命名为2.txt

为什么加了路径就成功了呢,这种情况是怎么回事?





作者: yfwang0798    时间: 2016-9-30 17:13
第一,批处理文件的名字最好不要与内部命令同名,
第二  第一个出错的,可以在autoexec.bat 中加一条命令
psth  a:\
不知道你出错的时候,执行第一命令call后,提示符是a:还是其他盘符? ,
作者: yjqd    时间: 2016-9-30 18:18
yfwang0798 发表于 2016-9-30 17:13
第一,批处理文件的名字最好不要与内部命令同名,
第二  第一个出错的,可以在autoexec.bat 中加一条命令
...

谢谢回复

因为两个批处理都是在autoexec.bat 中自动运行的,无法知道执行第一命令call后提示符是否是a:,第二个call执行完后是a:
-----------------------------------
dos中不能用echo %cd%,不然就能在批处理中用它可查看路径



作者: yjqd    时间: 2016-9-30 18:33
yfwang0798 发表于 2016-9-30 17:13
第一,批处理文件的名字最好不要与内部命令同名,
第二  第一个出错的,可以在autoexec.bat 中加一条命令
...

刚才又测试了一次

把ntfs.bat和ren.bat的命令直接放在autoexec.bat 中,又成功把1.txt 重命名为2.txt

作者: yjqd    时间: 2016-9-30 19:49
本帖最后由 yjqd 于 2016-9-30 19:51 编辑
yfwang0798 发表于 2016-9-30 17:13
第一,批处理文件的名字最好不要与内部命令同名,
第二  第一个出错的,可以在autoexec.bat 中加一条命令
...


又测试了一下,看来不是路径的问题,就像你说的“批处理文件的名字最好不要与内部命令同名”

我把镜像中的ren.bat和autoexec.bat 中的ren.bat都改为en.bat

运行dos执行完命令后,1.txt 成功重命名为2.txt



但windows中好像不存在这个问题




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3