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 @   龙凌云端  阅读(1803)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示