Listen for more specific events using inotifywait

Also implemented some changes suggested by [Shellcheck](https://github.com/koalaman/shellcheck)
This commit is contained in:
Rokosun 2022-09-19 14:09:49 +02:00
parent 5c66881c3e
commit 275a4eebe7

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."
done
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