Fork me on GitHub

Linux shell 脚本实现将一个目录下的子目录分别打成tar包,并复制到另一台机器上

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

 

posted @ 2020-04-27 14:59  龙凌云端  阅读(1736)  评论(0编辑  收藏  举报