Linux系统提供了一组称为mtools的可移植工具,可以让用户轻松地从标准的DOS软盘上读、写文件和目录。它们对DOS和Linux环境之间交换文件非常有用。它们是不具备共同的文件系统格式的系统之间交换文件的有力手段。对于一个MS-DOS的软盘,只要把软盘放在软驱中,就可以利用mtools提供的命令来访问软盘上的文件。
mtools的主要命令如下:
mcd 目录名 改变MSDOS目录;
mcopy 源文件 目标文件 在MSDOS和Unix之间复制文件;
mdel 文件名 删除MSDOS文件;
mdir 目录名 显示MSDOS目录;
mformat 驱动器号 在低级格式化的软盘上创建MSDOS文件系统;
rnlabel 驱动器号 产生MSDOS卷标;
mmd 目录名 建立MSDOS目录;
mrd 目录名 删除MSDOS目录;
mren 源文件 目标文件 重新命名已存在的MSDOS文件;
mtype 文件名 显示MSDOS文件的内容。
这些命令和对应的不加 m的 MSDOS命令非常相似。
例1:在Linux环境下看DOS盘最上层的目录的内容:
$ mdir a:
Volume in drive A has no label
Volume Serial Number is 15F6-3362
Directory of A:
SS6 CPP 331 09-24-99 7:41 ss6.cpp
CH9
11-20-99 16:22 ch9
XXQ 0 11-20-99 16:24 xxq
95CZXTA DOC 36,864 06-15-98 22:51 95czxta.doc
95CZXTB DOC 39,936 06-16-98 7:18 95czxtb.doc
HTCA DOC 27,136 01-08-99 0:13 htca.doc
HTCB DOC 27,136 01-08-99 0:12 htcb.doc
6 file(s) 131,403 bytes
1 dir(s) 1,295,872 bytes free
例2:将DOS盘上的文件xxq复制到当前目录下,并用ls命令进行验证。
$ mcopy a:htca.doc
$ ls –l htca.doc
-rw-r— -r- - 1 xxq xxq 27136 Jan 1 01:80 htca.doc
思 考 题
1. 如何找到用户主目录的绝对路径名?在自己的系统上,用户主目录的绝对路径名是什么?
2. 将当前工作目录从/home/xxq转到/home/wang需要使用什么命令?
3. 如何显示当前目录?
4. 如何在当前目录下建立子目录text?
5. 如何删除子目录text?
6. 如何查看当前目录下的内容?
7. 如何将文件text的权限设定为:text属主可读、可写、可执行,同组用户可读、可执行,其他用户可执行?
8. 如何将当前目录包括所有子目录全部做备份文件,备份文件名为first.tar?
9. 如何将目录/home下每一个文件压缩成.gz文件?
10. 如何把上例中每个压缩的文件解压,并列出详细的信息?
11. 如何将当前目录下的text文件拷贝到DOS软盘上,并用什么命令可以进行验证?
12. 如何将DOS盘上的example文件复制到当前目录下,并用什么命令可以进行验证?
13. 假设你以普通用户身份访问系统,显示文件系统中所有文件名为core的文件清单。
14. TurboLiunx系统提供了哪些有关文件显示的命令,它们从功能上来说有何区别?
15. 如何将目录/home/xxq下的文件text复制到目录/home/wang下,并将文件名重新命名为example,最后将目录/home/xxq下的文件text删除。
(本文改编自北京拓林思(TurboLinux)公司资料)