中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-17 12:22
47,814 主题排行 / 349,905 发帖 / 今日 2 篇 / 48,259 会员排行
DOS疑难解答 & 问题讨论 (解答室) » 删除文件
可打印版本  1,992 / 24
第1楼 wangyu824 发表于 2005-08-12 20:16
初级用户 发帖 14 积分 29 来自 chongqing
删除文件
我的目录是d:\kaoshi\error\event\add.pas
我要删除event子目录,dos命令怎么输入???
第2楼 willsort 发表于 2005-08-12 20:35
元老会员 发帖 1,512 积分 4,432
Re wangyu824:

  鉴于此类问题分属于基本的DOS命令理解范畴,请仔细阅读DOS的帮助文档和网络教程,或者将此类问题发表在“入门室”。谢谢合作!
第3楼 wangyu824 发表于 2005-08-12 20:54
初级用户 发帖 14 积分 29 来自 chongqing
willsort,你还不如直接告诉我
入门室在哪点吗?我没找到,网址?
第4楼 Michael 发表于 2005-08-12 21:07
钻石会员 发帖 3,041 积分 10,056
没错,这个问题太简单了,以至于没人敢回答你。
第5楼 wangyu824 发表于 2005-08-12 21:14
初级用户 发帖 14 积分 29 来自 chongqing
Michael
回答老又不死人,告诉我哈啥!!!菜鸟向给位大虾请教老
第6楼 fdsiuha 发表于 2005-08-12 21:32
高级用户 发帖 302 积分 587
绝对路径 相对路径 和当前目录的关系
所谓 绝对路径 ,就是该目录的完整路径。
譬如 d:\kaoshi\error\event\add.pas 包括了盘符(最顶级目录)和完整的各级目录。
譬如 ..\event\add.pas 这就是一个相对路径,与你现在的当前目录相关联,如果你的当前,目录是d:\kaoshi\error\event,那么..\event\add.pas代表的是d:\kaoshi\error\event\add.pas,但是如果你现在处于d:\kaoshi\那么代表的是d:\event\add.pas。
无论在什么情况下,绝对路径都是可以使用的。你现在已经在d:\kaoshi\error\event\目录下了,所以要对这个目录进行操作,你可以:
1. rd . 其中.的意思是当前目录
2. rd ..\event 其中..的意思是上一级目录

还可以以此类推

一直到
rd d:\kaoshi\error\event\
就是将完整的路径写在后面
这样做了你的DOS提示符还是
d:\kaoshi\error\event>_
但是注意,用DIR命令列表的时候就会少了.和..两项。表示这个目录已经不存在了

最后要注意,rd命令是只删除空目录的,你的这个目录下有文件的话使用deltree命令代替,前提条件是你的硬盘上要有这个外部命令。

我很早的时候也曾经茫然过这个问题^^。但是希望楼主注意发帖的位置。与人方便,与己方便。还有就是不要使用方言或别字。



*******以上内容只能在WIN9X的DOS窗口使用*******
***纯DOS以及NT下的CMD命令不允许删除当前目录****

[ Last edited by fdsiuha on 2005-8-15 at 10:11 ]
第7楼 xy2fengye 发表于 2005-08-12 22:29
初级用户 发帖 23 积分 55
可能用deltree命令
deltree d:\kaoshi\error\event
第8楼 Michael 发表于 2005-08-12 23:09
钻石会员 发帖 3,041 积分 10,056
还有,就是搞清楚目录和文件的区别。
第9楼 fdsiuha 发表于 2005-08-13 09:55
高级用户 发帖 302 积分 587
汗...
不会...add.pas又是一个子目录吧
第10楼 Climbing 发表于 2005-08-13 14:08
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
当版主遇到象顶楼这样的菜鸟的时候,是对自己修养的一种严峻考验。

顶楼的同学,我无意于贬低你的任何什么,但你也要理解,当版主也是很不容易的。
第11楼 willsort 发表于 2005-08-13 20:14
元老会员 发帖 1,512 积分 4,432
Re wangyu824:

  我所说的“入门室”,是指本论坛(中国DOS联盟联合DOS论坛)的 DOS學習入門 & 精彩文章 (教學室),那里有很多人乐意回答你的此类问题。

  在此我更正“入门室”的称谓,应该是“教学室”,对因此而使你产生的困惑,我表示十分抱歉!

Re fdsiuha:

  对绝对路径、相对路径和当前目录的表述,我基本无异议。在此仅对你使用的RD示例表示存疑。

  无论是在MSDOS还是在Window的命令行中,都应该是无法删除当前目录和它的上级目录的,因为若正确执行此命令,对当前路径的引用将引发不可知的问题。

  在MSDOS6.22中提示"Attempt to remove current directory - .";
  在XP的CMD中提示“另一个程序正在使用此文件,进程无法访问。”

  另外,无论在何种情况下,DIR的目录列表都应该会存有.和..的引用的,你所说的情况我从未遇到,不知是否可以举出你所做的测试? 

[ Last edited by willsort on 2005-8-14 at 07:19 ]
第12楼 fdsiuha 发表于 2005-08-13 21:02
高级用户 发帖 302 积分 587
可以的,你可以在WIN98下测试这个结果

先建立一个目录 a
然后进入到这个目录 cd a
这样的目录结构就是 c:\windows\desktop\a
当前目录 c:\windows\desktop\a
然后删除他 rd c:\windows\desktop\a
或者 rd ..\a
那么,所以以上操作完成之后,现在的提示符仍然为c:\windows\desktop\a>_
在这个情况下列表 dir
屏幕显示如下:

C:\WINDOWS\Desktop>md a

C:\WINDOWS\Desktop>cd a

C:\WINDOWS\Desktop\a>rd ..\a

C:\WINDOWS\Desktop\a>dir

Volume in drive C has no label
Volume Serial Number is 405D-140B
Path not found

C:\WINDOWS\Desktop\a>cd c:\windows\desktop\a
Invalid directory

C:\WINDOWS\Desktop\a>

因为这个时候不存在当前目录的概念了,所以不会有与之关联的本级目录和上级目录的概念。^_^
但是值得说明的一点是,如果这个时候使用了其他需要当前目录的程序,是会出一点问题的,比如会报告“找不到文件”,因为现在没有“当前目录”的概念了。

从编程的角度来说,对于汇编和C语言来说,DOS的环境变量只是内存中一块没有保护,也不用保护的数据块,或者是一个全局变量,那里都可以存取的。但是明显在WINNT模式下不允许这种“纯DOS的行为”。

所以在这个层面上对于DOS来说,DOS7.1要比6.22的目录管理功能灵活一些,能够允许对当前目录进行有限度的操作。要说是问题的话,那这只能说是DOS自身不完善的问题,谁让它这样管理这些环境变量的呢。但这样的操作实际对DOS单任务操作系统,本身是没有什么太大危害的,最多给个出错提示。这是完全可以控制和预料的。

98仍然是DOS的一个GUI,其中的每一个DOS窗口都是不完全独立的DOS,但当前目录对DOS而言只是环境变量的一个部分,还没有上升到系统资源的地步。故每一个DOS窗口都有一个属于自己的不同的环境变量,实际与纯DOS并无本质区别。

至于CMD运行的是WIN32保护模式下的,我是这样认为的,当前这个概念已经上升到系统资源的级别。就算了同一个进程,对只能独占的资源的所进行的操作是不能同时并发进行。。虽然CMD表面上看来确实像一个DOS,但它并不是DOS,甚至不是模拟器+DOS,只是一个模拟的DOS环境,只是一个有图形命令行的WIN32普通程序罢了,与EXPLORER.exe都没有什么本质的区别。而上面的操作,对于一个严格的WIN32程序来说,这样自然是不可以以接受的。

如果有什么不妥的地方希望大家不吝指正,我也是菜菜的^^。

[ Last edited by fdsiuha on 2005-8-13 at 21:55 ]
第13楼 Climbing 发表于 2005-08-13 21:18
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
这大概是98的一个bug,我在2003下是无法测试这个结果的。

另外,也不是所有的目录都有.和..的相对路径的,例如磁盘的根目录。
第14楼 GOTOmsdos 发表于 2005-08-13 21:24
铂金会员 发帖 1,827 积分 5,154
我在XP下试了, 不给删,98没试
第15楼 fdsiuha 发表于 2005-08-13 21:59
高级用户 发帖 302 积分 587
我对后面两位的帖子做了一些说明和修改,就在原文上。可能会造成一些发贴顺序的逻辑混乱,勿怪^^。
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023