簡體   English   中英

父目錄的腳本創建tar,它將具有其子目錄的各個tar

[英]Script create tar of a Parent directory which will have individual tar's of its sub directories

我想編寫一個包含兩個參數的腳本:1.父目錄的名稱(例如mainFolder)2.要創建的tar的名稱

父目錄將具有子文件夾(folder1,folder2,folder3等)。 我需要一個腳本來創建“ mainFolder.tar”,該腳本將由“ folder1.tar”,“ folder2.tar”,“ folder3.tar” ...等組成。

tar cvf mainFolder.jar mainFolder

這將僅直接創建父級的tar文件...任何人都可以告訴我如何使mainFolder.tar文件創建並包含其子目錄的tar文件...需要一個Shell腳本(例如createTar.sh)做..

創建tar時,tar ..文件應僅考慮父文件夾“ mainFolder”中的“目錄”,而不應考慮“ .txt”文件。

這是您的問題的POSIX兼容解決方案。 可能有一種更簡單的方法(不使用任何臨時文件),但是它將涉及tar特殊且可能是不可移植的參數。

#!/bin/sh


startdir="$(pwd)"

mkdir -p parent/horse/frog parent/dog/frog parent/fish/frog

mkdir newparent

(
    cd parent

    for i in *
    do if [ -d "$i" ] 
       then tar -cf "$startdir/newparent/${i}.tar" ${i}
       fi
       if [ -f "$i" ] 
       then cp "$i" "$startdir/newparent/"
       fi
    done
)

tar -cf newparent.tar newparent

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM