我试图每隔2秒清除服务器上的facebook缓存,所以我登录了SSH并运行了这个命令
while true; do sleep 2; curl -F id="http://twd.ma" -F scrape=true -F access_token='token' -F appID=appID https://graph.facebook.com; done &
每件事都运行良好,缓存开始每隔2秒清理一次。但是,当我关闭终端SSH时,缓存停止被清理,我认为该进程被终止,我该怎么办?
答案 0 :(得分:0)
您的命令将停止执行,因为当您注销时,shell将丢失。 '&'表示脚本在后台运行"只要shell处于活动状态"
您可以执行以下操作: 将您的脚本写入文件,即clearcache.sh并省略'&'
#!/bin/bash
while true; do
sleep 2
curl -F id="http://twd.ma" -F scrape=true -F access_token='token' -F appID=appID https://graph.facebook.com
done
将脚本的路径写入/etc/rc.local
/path/to/clearcache.sh > /dev/null 2&>1 &
' > / dev / null 2&> 1表示将删除脚本生成的所有输出。
答案 1 :(得分:0)
如果您可以使用screen
,则可以通过运行screen
启动屏幕会话,运行命令,然后按ctrl-a ctrl-d
以分离会话。
稍后登录时,您可以发出screen -r
以重新连接到分离的会话。