UNIX下的文件系统与DOS完全不同,它对于磁盘文件的操作应用非常复杂,常常以长而难 记的命令行为代价,不便于使用。在磁盘管理中,如要格式化文件系统、构造文件系统、挂装 文件系统、下装文件系统、显示软盘系统参数、将硬盘数据备份至软盘、将软盘信息恢复至 硬盘,这都是系统管理员常做的。为使用方便,笔者书写了一个shell程序,将各项命令都纳入 菜单,从而避免了复杂命令行的麻烦。程序在SCO UNIX系统下调试通过。 ¥cat menu,sh<Enter> /*显示菜单程序MENU,SH清单*/ ; #程序名;MENU,SH # SCO UNIX环境下的软盘管理工具 # PATH=/bin;/usr/bin; true=0 while test ¥ true=0 do clear echo "\n\n\n\n\n" echo" ** SCO UNIX环境下的软盘管理工具** 1.软盘格式化(format) 2.构造文件系统(mkfs) 3.安装软盘(mount) 4.拆卸软盘(umount) 5.显示软盘信息 6.将硬盘信息拷贝至软盘 7.将软盘信息拷贝至硬盘 0.退出 etho" 请选择(0,1—7):\c" read choice clear if test ¥choice -eq 0 then clear echo"\n\n\n\n\n" exit 0 fi getyn() /*shell函数*/ { while echo"¥*继续吗!请回答(y/n)?\c" do read yn rest case ¥yn in [yY])return 0;; [nN])return 1;; *)echo"******请回答(y或n)!!!";; esac done } fy() /*shell函数*/ { echo请输入你的软盘规格:\(0-代表A驱动器\)\(1-代表B驱动器\);"\c" read floppy if test ¥ floppy -eq 0 then DEVICE=/dev/rfd0135ds18 FD=A else DEVICE=/dev/rfd196ds15 FD=B fi } case ¥ choice in 1) fy clear while getyn do format ¥ DEVICE done;; 2)echo 您的软盘规格是\(0-代表1.44MB\)\(1-代表1.2MB\);"\c" read floppy if test ¥ floppy-eq 0 then /etc/mkfs/dev/rfd0135ds18 1440 echo"******软盘文件系统构造成功!!" sleep 3 else /etc/mkfs/dev/rfd196ds15 1200 echo"******软盘文件系统构造成功!!" sleep 3 fi;; 3) echo 您的软盘规格是\(0-代表1.44MB\)\(1-代表1.2MB\);"\c" read floppy if test ¥ floppy -eq 0 then echo "软盘已成功地挂接在/usr/jn下,即可将子目录/usr/jn当作软盘进行操作 。" echo"用户注意:软盘安装后,在没有拆卸之前,不要将软盘取出!" sleep 3 /etc/mount/dev/fd0/usr/jn /etc/mount sleep 3 else echo"软盘已成功地挂接在/usr/jn下,即可将子目录/usr/jn当作软盘进行操作 。" echo"用户注意:软盘安装后,在没有拆卸之前,不要将软盘取出!" sleep 3 /etc/mount /dev/fd1/usr/jn /etc/mount sleep 3 fi ;; 4)echo 请输入你的软盘规格:\(0-代表A驱动器\)\(1-代表B驱动器\):"\c" read floppy if test ¥ floppy -eq 0 then DEVICE=/dev/fd0 FD=A else DEVICE=/dev/fd1 FD=B fi /etc/umount ¥ DEVICE if test ¥!-eq 0 then echo"******软盘已经拆卸!!你现在可以取出软盘!" sleep 3 fi;; 5)fy echo 请将软盘插入¥FD驱动器中!并关好门!…… echo sleep 2 tar tvf ¥DEVICE sleep 5;; 6)while getyn do clear echo 现在的工作路径是:'pwd' echo 输入待拷贝的路径和文件名\(如:\/usr\/bd1996\):"\c" read file fy echo 正在拷贝,请稍候…… tar uvf ¥DEVICE ¥file done;; 7)while getyn do echo " 用户注意:从软盘中读入指定的文件时,必须一个文件一个文件地" echo "指定,不能使用通配符!!!" fy echo 请将软盘插入 ¥FD驱动器中! tar tvf ¥DEVICE echo 请输入软盘中待读入的文件名:"\c" read file echo 正在读盘,请稍候…… tar xvf ¥DEVICE ¥file echo" ****拷贝完成!!!" sleep 2 clear done;; esac done ¥sh-v menu.sh<Enter> /*对shell程序的全部执行过程进行跟踪*/ ¥chmod u+x menu.sh<Enter>
[1] [2] 下一页
(出处:http://www.sheup.com)
上一页 [1] [2]