我创建了一个名为“quicktest.sh”的bash脚本。此脚本的任务是在所有用户主目录的Data文件夹中设置inotifywait quicktest.sh的代码如下:
function inotify_data()
{
user="$1"
if [ -d /home/$user/Data ];
then
while read -r path action file; do
echo "The file '$file' created"
chmod 0777 -R /home/$user/Data
done < <(exec inotifywait -m -r /home/$user/Data -e moved_to -e create -e modify)
fi
}
cd /home/
ls >/tmp/.grp
i=1
n=`wc -l </tmp/.grp`
while [ "$i" -le "$n" ]
do
user=`awk "NR==$i" /tmp/.grp`
echo "setting watch on $user Data Folder."
inotify_data "$user" &
i=$((i+1))
done
我的机器中有2个用户, 运行此脚本后,我运行“ps -ef | grep -i quicktest.sh”,然后它将显示此文件的两个进程。