Я хотел бы иметь простой скрипт для уведомления пользователя на экране каждый раз, когда в общей папке создается новая папка или файл. Вывод должен выглядеть так: «У вас есть новый файл / папка с именем newfile / newfolder». Я использую этот сценарий, но не могу поместить имя newfile / newfolder в вывод zenity.
while inotifywait -r -e create ~/Documents/Process
do
zenity --warning -- ????
done
спасибо Djames
Вы можете попробовать аналогичный скрипт:
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 kbd> + C kbd>, чтобы отменить часы.