14 lines
337 B
Bash
Executable File
14 lines
337 B
Bash
Executable File
#!/bin/bash
|
|
zfs diff -H "$3" "$4" | grep '^R' | while read -r line
|
|
do
|
|
get_path() {
|
|
path="$(echo -e "$(echo "$line" | cut -d$'\t' "-f$3")")"
|
|
echo "${path/#$2/$1}"
|
|
}
|
|
|
|
from="$(get_path "$1" "$2" 2)"
|
|
to="$(get_path "$1" "$2" 3)"
|
|
mkdir -vp -- "$(dirname "$to")"
|
|
mv -vn -- "$from" "$to" || echo "Unable to move $from"
|
|
done
|