Added b-size
This commit is contained in:
parent
82f81c4e01
commit
6ef6456e0c
83
zsh/borg.zsh
83
zsh/borg.zsh
@ -24,6 +24,89 @@ b-rename() {
|
|||||||
b-info() {
|
b-info() {
|
||||||
borg info "$REPO"::"$1"
|
borg info "$REPO"::"$1"
|
||||||
}
|
}
|
||||||
|
b-diff() {
|
||||||
|
REPO="aw:backup/backup.borg"
|
||||||
|
borg list "$REPO"
|
||||||
|
echo -n "First ID: "
|
||||||
|
read ID1
|
||||||
|
echo -n "Second ID: "
|
||||||
|
read ID2
|
||||||
|
|
||||||
|
|
||||||
|
if [ -z "$ID2" ] || [ -z "$ID2" ]; then
|
||||||
|
echo "No id" >&2
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
BASEPATH="/tmp/$(uuidgen)"
|
||||||
|
mkdir -p "$BASEPATH"
|
||||||
|
FILE_LIST1="$BASEPATH/$(uuidgen)"
|
||||||
|
FILE_LIST2="$BASEPATH/$(uuidgen)"
|
||||||
|
A_DIFFS="$BASEPATH/$(uuidgen)"
|
||||||
|
B_DIFFS="$BASEPATH/$(uuidgen)"
|
||||||
|
FILE_SIZE_LIST1="$BASEPATH/$(uuidgen)"
|
||||||
|
FILE_SIZE_LIST2="$BASEPATH/$(uuidgen)"
|
||||||
|
COMPLETED_FILE1="$BASEPATH/$(uuidgen)"
|
||||||
|
COMPLETED_FILE2="$BASEPATH/$(uuidgen)"
|
||||||
|
echo "FILE_LIST1: $FILE_LIST1"
|
||||||
|
echo "FILE_LIST2: $FILE_LIST2"
|
||||||
|
echo "A_DIFS: $A_DIFFS"
|
||||||
|
echo "B_DIFFS: $B_DIFFS"
|
||||||
|
echo "FILE_SIZE_LIST1: $FILE_SIZE_LIST1"
|
||||||
|
echo "FILE_SIZE_LIST2: $FILE_SIZE_LIST2"
|
||||||
|
echo "COMPLETED_FILE1: $COMPLETED_FILE1"
|
||||||
|
echo "COMPLETED_FILE2: $COMPLETED_FILE2"
|
||||||
|
borg list --short "$REPO"::"$ID1" | pv -N "Getting List 1" > "$FILE_LIST1"
|
||||||
|
borg list --short "$REPO"::"$ID2" | pv -N "Getting List 2" > "$FILE_LIST2"
|
||||||
|
# Find differences and calculate them
|
||||||
|
diff <(pv -cN "List 1 Diff" "$FILE_LIST1") <(pv -cN "List 1 Diff" "$FILE_LIST2") > >(ag '^<' | perl -pe 's/^< //' > "$A_DIFFS") > >(ag '^>' | perl -pe 's/^> //' > "$B_DIFFS")
|
||||||
|
# Truncate everything
|
||||||
|
:|tee "$FILE_LIST1" "$FILE_LIST2"
|
||||||
|
# Calculate sizes of file1
|
||||||
|
while read i
|
||||||
|
do
|
||||||
|
test -f /"$i" && du -sh /"$i" 2>/dev/null >> "$FILE_SIZE_LIST1"
|
||||||
|
done < <(pv -N "Calculating a sizes" "$A_DIFFS")
|
||||||
|
# Sort everything
|
||||||
|
pv -N "Sorting a sizes" "$FILE_SIZE_LIST1" | sort -h | tac > "$COMPLETED_FILE1"
|
||||||
|
# Calculate sizes of file2
|
||||||
|
while read i
|
||||||
|
do
|
||||||
|
test -f /"$i" && du -sh /"$i" 2>/dev/null >> "$FILE_SIZE_LIST2"
|
||||||
|
done < <(pv -N "Calculating b sizes" "$B_DIFFS")
|
||||||
|
# Sort everything
|
||||||
|
pv -N "Sorting b sizes" "$FILE_SIZE_LIST2" | sort -h | tac > "$COMPLETED_FILE2"
|
||||||
|
# Truncate everything
|
||||||
|
:|tee "$A_DIFFS" "$B_DIFFS" "$FILE_SIZE_LIST1" "$FILE_SIZE_LIST2"
|
||||||
|
echo "In first backup:"
|
||||||
|
echo "$COMPLETED_FILE1"
|
||||||
|
echo "In second backup:"
|
||||||
|
echo "$COMPLETED_FILE2"
|
||||||
|
}
|
||||||
|
b-size() {
|
||||||
|
REPO="aw:backup/backup.borg"
|
||||||
|
borg list "$REPO"
|
||||||
|
echo -n "ID: "
|
||||||
|
read ID
|
||||||
|
if [ -z "$ID" ]; then
|
||||||
|
echo "No id" >&2
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
FILE_LIST="/tmp/$(uuidgen)"
|
||||||
|
FILE_SIZE_LIST="/tmp/$(uuidgen)"
|
||||||
|
COMPLETED_FILE="/tmp/$(uuidgen)"
|
||||||
|
echo "FILE_LIST: $FILE_LIST"
|
||||||
|
echo "FILE_SIZE_LIST: $FILE_SIZE_LIST"
|
||||||
|
echo "COMPLETED_FILE: $COMPLETED_FILE"
|
||||||
|
borg list --short "$REPO"::"$ID" | pv -N "Getting List" > "$FILE_LIST"
|
||||||
|
while read i
|
||||||
|
do
|
||||||
|
test -f /"$i" && du -sh /"$i" 2>/dev/null >> "$FILE_SIZE_LIST"
|
||||||
|
done < <(pv -N "Calculating Sizes" "$FILE_LIST")
|
||||||
|
:>"$FILE_LIST"
|
||||||
|
pv -N "Sorting List" "$FILE_SIZE_LIST" | sort -h | tac > "$COMPLETED_FILE"
|
||||||
|
:>"$FILE_SIZE_LIST"
|
||||||
|
less "$COMPLETED_FILE"
|
||||||
|
}
|
||||||
b-cmd() {
|
b-cmd() {
|
||||||
echo "$REPO"
|
echo "$REPO"
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user