сценарий zenity + inotify

Я хотел бы иметь простой скрипт для уведомления пользователя на экране каждый раз, когда в общей папке создается новая папка или файл. Вывод должен выглядеть так: «У вас есть новый файл / папка с именем newfile / newfolder». Я использую этот сценарий, но не могу поместить имя newfile / newfolder в вывод zenity.

while inotifywait -r -e create ~/Documents/Process
do
    zenity --warning -- ????
done

спасибо Djames

0
задан 7 June 2012 в 22:05

1 ответ

Вы можете попробовать аналогичный скрипт:

while true
do
    fileName=$(inotifywait -r -e create ~/Documents/Process | sed -r 's/^.*CREATE(,ISDIR)*\s+(.*)$/\2/g')
    zenity --warning --text="You have a new file/folder named $fileName"
done

Переменная fileName содержит имя извлеченного файла, которое inotifywait обнаруживает и выводит. (Он фильтруется по выходным данным с помощью команды sed.)

Затем $fileName отображается с помощью zenity с помощью переключателя --text=.

Эти две строки выполняются в бесконечном цикле, чтобы позволить обнаружение других событий создания. Используйте CTRL + C , чтобы отменить часы.

0
ответ дан 7 June 2012 в 22:05

Другие вопросы по тегам:

Похожие вопросы: