Listen for more specific events using inotifywait #8

Merged
tio merged 1 commits from rokosun-patch-1 into main 2022-09-20 00:10:44 +00:00
Showing only changes of commit 275a4eebe7 - Show all commits

View File

@ -1,16 +1,16 @@
#!/bin/sh
#!/bin/bash
shared_themes_dir=/usr/share/themes/
home_local_themes_dir="$HOME/.local/share/themes/"
source_theme_dirs="$shared_themes_dir $home_local_themes_dir"
source_theme_dirs=("$shared_themes_dir" "$home_local_themes_dir")
target_themes_dir="$HOME/.themes"
if [ ! -e $home_local_themes_dir ]; then
mkdir -p $home_local_themes_dir
if [ ! -e "$home_local_themes_dir" ]; then
mkdir -p "$home_local_themes_dir"
echo "Directory $home_local_themes_dir is created."
fi
echo "Set watch for $source_theme_dirs directories ..."
while inotifywait -r $source_theme_dirs; do
rsync -av --delete --progress $source_theme_dirs $target_themes_dir
echo "Directory $target_themes_dir is synchronized with $source_theme_dirs."
echo "Set watch for" "${source_theme_dirs[@]}" "directories ..."
while inotifywait -qr -e 'modify,attrib,move,move_self,create,delete,delete_self,unmount' "${source_theme_dirs[@]}"; do
rsync -av --delete --progress "${source_theme_dirs[@]}" "$target_themes_dir"
echo "Directory $target_themes_dir is synchronized with" "${source_theme_dirs[@]}"
done