#!/bin/bash
# directory to monitor
monitoredDirectory="/tmp";
# control file
monitorFile="$(mktemp).$$"
# sleep time
monitorSleep=10
while /bin/true;
do
# if you want to see directories remove '-type f'
find "${monitoredDirectory}" -type f -cnewer "$monitorFile" -print 2>/dev/null
touch "$monitorFile"
sleep $monitorSleep
done
# 1 楼答案
您必须能够通过一些协议(HTTP、samba、ftp、nfs等)在HostB中进行访问,该协议包含java代码。然后,您只需创建一个Java守护进程线程,定期检查目录以查看是否有任何更改,然后复制数据
# 2 楼答案
我会用JSch。如果HostA和hosb是linux主机,这可能就可以了。您可以使用安全复制(scp)来传输数据,并使用ssh执行一些shell代码来远程监视文件。这可以通过设置公钥/私钥来实现
要使用shell进行监控,可以使用以下内容: