inotifywait проблема пространства имен

Я следую за каталогом / home и его подкаталогами с помощью скрипта bash ниже. но когда имена каталогов пустые, скрипт работает неправильно.

#!/bin/bash
inotifywait -m -r -e moved_to -e create "/home"  | while read path action file 
do
    echo "$path$file -> $action"
done

Простой 1

/home/new_folder1/new_text.txt

вывод сценария

/home/new_folder1 -> CREATE,ISDIR
/home/new_folder1/new_text.txt -> CREATE

Простые 2

/ home / new folder1 / new text.txt

вывод сценария

/home/new folder1 -> CREATE,ISDIR
/home/newCREATE new text.txt -> folder1/

извините, плохой английский

1 ответ

Решение

Укажите пользовательский формат, который помещает оба компонента пути в крайнее правое поле:

inotifywait  --format="%e %w%f" | while read -r action fullpath
Другие вопросы по тегам