bash查找子文件夹和备份

时间:2010-09-28 20:06:07

标签: bash backup

如何读取父文件夹的内容以及是否找到子文件夹,然后创建找到这些子文件夹的tar.gz个文件。但是,我知道子文件夹将具有以下文件名格式:name-1.2.3我想要的是创建一个tar.gz文件,如下所示:name-1.2.3-20100928.tar.gz任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

#!/bin/sh
DATE=`/bin/date +%y%m%e`

cd /path/to/your/folder

for folder in *; do
    if [ -d $folder ]; then
        tar -cvzf $folder-$DATE.tar.gz $folder
    fi
done

答案 1 :(得分:0)

使用名称中的空格更好地免疫脚本:

#!/bin/bash
# Yes nested quoting is allowed with $(...) syntax, no matter whether syntax coloration does
DATE="$(/bin/date "+%y%m%e")"

cd /path/to/your/folder
for folder in * ; do
    if test -d "$folder" ; then
        tar cvzf "$folder-$DATE.tar.gz" "$folder"
    fi
done