additional dev of archival
This commit is contained in:
@@ -4,8 +4,13 @@
|
|||||||
function helpexit() {
|
function helpexit() {
|
||||||
echo Archive the subfolders of the current directory
|
echo Archive the subfolders of the current directory
|
||||||
echo " -z Compress. If not passed, will ask after tar archive"
|
echo " -z Compress. If not passed, will ask after tar archive"
|
||||||
|
echo " -n No compression. Exit after tar archive"
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
function fsize() {
|
||||||
|
echo -en "\e[2K\r"
|
||||||
|
ls -sh "$1" | xargs echo -n
|
||||||
|
}
|
||||||
|
|
||||||
[[ "$1" = "-h" ]] && helpexit
|
[[ "$1" = "-h" ]] && helpexit
|
||||||
|
|
||||||
@@ -21,14 +26,18 @@ find . -mindepth 1 -maxdepth 1 -type d -print0 | sort | while read -r -d "" d; d
|
|||||||
echo -n $d
|
echo -n $d
|
||||||
tar cvf "$d.tar" $d > "$d.tar.txt" &
|
tar cvf "$d.tar" $d > "$d.tar.txt" &
|
||||||
PID=$!
|
PID=$!
|
||||||
while kill -0 "$PID" >/dev/null 2>&1; do
|
while kill -0 "$PID" &>/dev/null; do
|
||||||
sleep 5
|
for i in {1..5}; do
|
||||||
echo -en "\r"
|
sleep $i; kill -0 "$PID" &>/dev/null || break 2
|
||||||
ls -sh "$d.tar" | xargs echo -n
|
done
|
||||||
|
fsize "$d.tar"
|
||||||
done
|
done
|
||||||
echo -en "\r"
|
fsize "$d.tar"
|
||||||
ls -sh "$d.tar"
|
echo ''
|
||||||
done
|
done
|
||||||
|
[[ "$1" = "-n" ]] && {
|
||||||
|
exit
|
||||||
|
}
|
||||||
[[ "$1" = "-z" ]] || {
|
[[ "$1" = "-z" ]] || {
|
||||||
echo 'Proceed to compress? <ctrl-c> to quit'
|
echo 'Proceed to compress? <ctrl-c> to quit'
|
||||||
read foo
|
read foo
|
||||||
@@ -39,11 +48,12 @@ find . -mindepth 1 -maxdepth 1 -type d -print0 | sort | while read -r -d "" d; d
|
|||||||
gzip "$d.tar"
|
gzip "$d.tar"
|
||||||
PID=$!
|
PID=$!
|
||||||
while kill -0 "$PID" >/dev/null 2>&1; do
|
while kill -0 "$PID" >/dev/null 2>&1; do
|
||||||
sleep 5
|
for i in {1..5}; do
|
||||||
echo -en "\r"
|
sleep $i; kill -0 "$PID" &>/dev/null || break 2
|
||||||
ls -sh "$d.tar" | xargs echo -n
|
done
|
||||||
|
fsize "$d.tar.gz"
|
||||||
done
|
done
|
||||||
echo -en "\r"
|
fsize "$d.tar.gz"
|
||||||
ls -sh "$d.tar"
|
echo ''
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user