linux双击打开shell文件夹,linux – 添加文件时运行shell命令

这篇博客建议通过跟踪FTP服务器日志来实时监控文件上传,而非依赖inotify或传统的cron轮询。作者以vsftpd为例,展示了如何解析日志并用shell脚本来检测上传事件,这种方法更快、更可靠,且对系统资源影响小。对于HTTP上传,作者建议检查工具是否具有上传日志功能。
摘要由CSDN通过智能技术生成

我不知道人们如何将内容上传到此文件夹,但您可能希望使用比使用inotify监视目录更低技术的东西.

如果协议是FTP并且您可以访问FTP服务器的日志,我建议拖尾该日志以观察上传成功.与使用传统cron的轮询方法相比,这种事件触发的方法将更快,更可靠,负载更少,并且比使用inotify的方法更便携,更易于调试.

处理此问题的方式当然取决于您的FTP服务器.我有一个运行vsftpd,其日志包括这样的行:

Fri May 25 07:36:02 2012 [pid 94378] [joe] OK LOGIN: Client "10.8.7.16"

Fri May 25 07:36:12 2012 [pid 94380] [joe] OK UPLOAD: Client "10.8.7.16", "/path/to/file.zip", 8395136 bytes, 845.75Kbyte/sec

Fri May 25 07:36:12 2012 [pid 94380] [joe] OK CHMOD: Client "10.8.7.16", "/path/to/file.zip 644"

仅当vsftpd成功保存文件时才会添加UPLOAD行.您可以在shell脚本中解析此问题,如下所示:

#!/bin/sh

tail -F /var/log/vsftpd.log | while read line; do

if echo "$line" | grep -q 'OK UPLOAD:'; then

filename=$(echo "$line" | cut -d, -f2)

if [ -s "$filename" ]; then

# do something with $filename

fi

fi

done

如果您使用的是HTTP上传工具,请查看该工具是否具有用于记录传入文件的文本日志文件.如果它不考虑添加某种记录器功能,那么它将产生你可以尾随的日志.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值