首页 > 代码库 > linux shell 高级批处理

linux shell 高级批处理

在DOS中有个‘批处理’文件,将多条命令写进一个叫.bat的批处理。

在linux 中,也可以做到,并且功能更强大,我写的批处理是在ubuntu 12.04 LTS

我所要做的就是将U盘中的图片移到电脑中。

以下是代码实现:

sudo mount /dev/sdd1/ /media/
cp /media/helloworld/程序/*.bmp /home/xyx/ahah
tar -zcPvf /home/xyx/ahah/PIC`date +%Y%m%d`.tar.gz /media/helloworld/程序/*.bmp
rm /media/helloworld/程序/*.bmp
sudo umount /media/

第一行:先进行挂载,可以用命令mount先查看下,/media/ 是挂载点,是我自己随便起得

第二行:将U盘的图片复制到家目录的ahah文件下

第三行:压缩,备份。

第四行:删除U盘中以*.bmp 的图片

第五行:卸载。


注意:第三行,命令行参数中有个大写的P,如果没有,就会报出:tar:从成员名中删除开头的“/”

在linux 中,不论是创建还是解压tar包,默认情况下绝对路径中的“/”将会被删除。

虽然执行的结果是相同的,但在linux 中想要保留,加上P会比较完美。

本文出自 “天才的实力” 博客,请务必保留此出处http://8299474.blog.51cto.com/8289474/1534279