我有linux客户端和linux服务器。两者都是 Ubuntu 16.04。
在客户端上,我几乎每秒都会生成 .txt 文件,并且我想将它们传输到服务器,所以我的问题是:为此目的的最佳解决方案是什么?
我做了这个脚本:
#!/bin/bash
path="/home/path"
while true
do
for entry in "$path"/*.txt
do
if [ -f "$entry" ]
then
scp "$entry" [email protected]:/home/4lkov/Desktop/scp && rm -f "$entry"
else
echo "No files";
fi
done
sleep 1
done
那么,我正在使用 SCP 是否可靠或者是否有最好的方法(rsync 或类似)?
另外我正在使用 sleep 1..可能有一些看门狗? (IE inotifywait -m /path -e create -e moved_to |
)
答案1
该脚本永远循环遍历每个文件,$path
并打开一个 SCP 连接来单独传输每个文件,每秒暂停一次。这有很高的开销。更好地使用rsync
而不是将目录从服务器同步到客户端。