在Linux操作系统中,如果插入一个USB设备,需要用mount挂载命令才能实现这个设备的加载,下面写一个USB设备挂载与文件复制的Shell程序,程序需求: 1、运行时,提示用户输入y或者Y,确
在Linux操作系统中,如果插入一个USB设备,需要用mount挂载命令才能实现这个设备的加载,下面写一个USB设备挂载与文件复制的Shell程序,程序需求:
1、运行时,提示用户输入“y”或者“Y”,确定是否挂载USB设备,U盘文件/dev/sdc1
if[$ANS="Y" -o $ANS = "y"] then mount -t vfat /dev/sdc1 /mnt/usb
2、确定是否复制文件到/root
最好用$?判断一下是否复制成功,$? -eq 0,表示复制成功
while[$ANS="Y" -o $ANS = "y"] do ls -lha /mnt/usb echo "type the filename you want to copy" read FILE cp /mnt/usb/"$FILE" /root
3、确定是否复制文件到USB设备中
echo "Do you want to copy files to USB(y/n)" read ANS while[$ANS="Y" -o $ANS = "y"] do ls -lh /root echo "type the filename you want to copy" read FILE cp /root/"$FILE" /mnt/usb if[ $? -eq 0];then echo "Finished" else echo "Error" fi echo "any other files(Y/N)" read ANS done
完整的脚本:
#!/bin/bash #autousb echo "Welcome to USB" echo "Do you want load USB(Y/N)" read ANS if[$ANS="Y" -o $ANS = "y"]; then mount -t vfat /dev/sdc1 /mnt/usb echo "Do you want to copy files to /root(y/n)?" read ANS while[$ANS="Y" -o $ANS = "y"] do ls -lha /mnt/usb echo "type the filename you want to copy" read FILE cp /mnt/usb/"$FILE" /root if[ $? -eq 0];then echo "Finished" else echo "Error" fi echo "any other files(Y/N)" read ANS done fi echo "Do you want to copy files to USB(y/n)" read ANS while[$ANS="Y" -o $ANS = "y"] do ls -lh /root echo "type the filename you want to copy" read FILE cp /root/"$FILE" /mnt/usb if[ $? -eq 0];then echo "Finished" else echo "Error" fi echo "any other files(Y/N)" read ANS done echo "Do you want to umount?(y/n)" read ANS if[$ANS="Y" -o $ANS = "y"];then umount /mnt/usb else echo "umount error" fi echo "GoodBye!!"