Linux shell 脚本实现将一个目录下的子目录分别打成tar包,并复制到另一台机器上
在实际使用中,比如Jenkins打包,需要将一个目录下的子目录打成tar包,并将打出的tar包复制到另一台机器上。
1、脚本实现如下:
#!/bin/bash for dir in `ls .` do if [ -d $dir ] then echo $dir tar -zcvf $dir.tar $dir scp $dir.tar 192.168.12.34:/opt/miracle/ rm $dir.tar fi done
2、脚本执行如下:
目录下有a,b,c三个文件夹,两个文件
脚本执行结果:
【PS】:
if [ -d $dir ] 这个是为了判断是否是文件夹(目录),因为脚本要实现的目的是:只将子目录打成tar,文件不能被打成tar。
另外,脚本想要运行,需要事先设置其执行权限,一般权限设置命令如下:
chmod +x testTar.sh