我想要一个简单的脚本,每次在共享文件夹中创建新文件夹或文件时,都会在屏幕上通知用户。输出应类似于“您有一个名为 newfile/newfolder 的新文件/文件夹”。我正在使用此脚本,但我无法将 newfile/newfolder 名称放入 zenity 输出中。
while inotifywait -r -e create ~/Documents/Process
do
zenity --warning -- ????
done
谢谢 Djames
答案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可中止监视。