批量脚本输出到网站

时间:2015-06-22 20:29:35

标签: windows batch-file ssh

我在DC服务器上设置了一个批处理脚本来监控我的互联网连接和其他事情,但我希望它可以在我的网站上在线托管。

有谁知道如何将结果输出到托管在服务器上的日志文件中?

在本地,这完美无缺:

@ECHO OFF
:LOOPSTART
echo %date% >> Google-log.txt
echo %time% >> Google-log.txt
ping 8.8.8.8 -n 4 >> Google-log.txt
GOTO LOOPSTART

但是我希望它能在我的网站上,这样我就可以看到结果而无需登录服务器来查看日志。

或许这样的事情?

@ECHO OFF
:LOOPSTART
echo %date% >> 173.252.120.6\Google-log.txt
echo %time% >> 173.252.120.6\Google-log.txt
ping 8.8.8.8 -n 4 >> 173.252.120.6\Google-log.txt
GOTO LOOPSTART

但后来我不确定如何授权用户编辑文件?是否可以通过批处理脚本SSH到服务器?

任何帮助都会受到大力赞赏。

2 个答案:

答案 0 :(得分:0)

如果您具有对Web服务器的FTP访问权限,则可以轻松配置ftp脚本。 Windows中包含的ftp客户端允许您提供-s标志来指定脚本文件:     ftp -s:myscript.txt

myscript.txt(未经测试):

  

打开173.252.120.6

     

cd logs

     

把Google-log.txt

     

退出

您可以在命令提示符窗口中启动ftp客户端并键入help来查找更多信息。

答案 1 :(得分:0)

如果您有SSH访问权限,则很可能也使用SFTP。因此,使用任何命令行SFTP客户端上传输出。

例如WinSCP

@ECHO OFF
:LOOPSTART
echo %date% > Google-log.txt
echo %time% >> Google-log.txt
ping 8.8.8.8 -n 4 >> Google-log.txt

winscp.com /log=winscp.log /command ^
    "open sftp://user:password@173.252.120.6/" ^
    "put -append Google-log.txt" ^
    "exit"

GOTO LOOPSTART

注意输出文件如何在每个循环中被覆盖(>而不是>>后的echo并附加到远程文件(-append开关) ,不要每次都重新上传整个日志。

有关详细信息,请参阅guide to automating SFTP/FTP transfers with WinSCP

(我是WinSCP的作者)