我正在编写一个bash Python脚本,用于检查文件目录(/ home / pi / owncloud)中的任何文件是否已被删除。如果目录已被删除,则将打印一条消息。如何检查文件是否已从目录中删除?
#!/bin/bash
message="file has been deleted"
if []//this is where i check directory
then
echo $message
答案 0 :(得分:1)
你可以创建一个无限循环来检查给定目录中的文件数量,一旦数字改变,它就会在控制台上显示print语句。
只有在执行脚本期间删除文件时,此方法才有效。
import os
path = "path/to/directory"
initial_files = len(os.listdir(path)))
while True:
if len(os.listdir(path))) != initial_files:
print "Some file(s) may be deleted or added"
break
答案 1 :(得分:1)
如果是在Linux上,我会使用inotify。
如果你不能这样做,你会做类似于anmol_uppal所做的事情,但要定期在目录中制作set
个文件名并检查它是否已经改变。
如果您想使用bash触发此操作(并且在Linux上),则可以使用inotifywait。