为了避免安装inotifywait
或incron
,我创建了一个简单的bash脚本,只要在Ubuntu 12.04上使用scp
进行更改,就可以将文件复制到服务器:
FILE=filename.log
while true
do
STDOUT=$(ls -l $FILE)
[ "$STDOUT_OLD" != "$STDOUT" ] && STDOUT_OLD=$STDOUT && \
scp -v $FILE hostname.com:/home/user/path/
sleep 5
done
当我运行它时,它立即复制文件,但对文件的后续更改会产生此错误:
...
filename.log: Resource temporarily unavailable
Sink: scp: filename.log: Resource temporarily unavailable
...
使用传统的if
块我遇到了同样的错误:
if [ "$STDOUT_OLD" != "$STDOUT" ]
then
STDOUT_OLD=$STDOUT
scp -v $FILE hostname.com:/home/user/path/
fi
发生了什么,我该如何解决?谢谢!