自动将日志文件从基于 unix 的服务器移动到 pc

Automatically move a log file from unix based server to pc

我正在尝试从基于 Unix 的服务器自动获取少量数据到我的 PC,即我希望每隔 30 分钟将数据传输到我的 PC。我有用于获取数据的 Unix 代码,但它是通过 putty 获取的,并且它仅存储在服务器中。我希望将数据存储在我的本地 PC 文件夹中。

tail -n 10000 conveyor2.log | grep -P 'curing result OK' | sed 's/FT\/FT/g' | awk '{print  }' | uniq | sort -n | uniq >> my_data.txt

为此,首先您可以在 unix 服务器上创建您的 PC 的挂载点。 这叫做桑巴。 在 unix 服务器和 window 机器

上都需要 root 权限

mount -t cifs //"ip-address of window system"/e$/ftp -o 用户名="username",密码="password" /"Mount point name"

执行此操作后,您可以直接在 window 机器上创建日志文件

如果您当前正在使用 putty 连接到服务器,那么您也可以在 Windows 端使用 "pscp" 或 "plink" 来执行到您 PC 的传输。

您需要先了解如何从命令行执行此操作。

例如:

pscp -i mykey.ppk user@serverName:logfileName targetName

(使用“-i mykey.ppk”可以绕过密码提示。您需要使用 puttygen 创建 "mykey.ppk"。)

然后您可以将其放入 .BAT 文件或 powershell 或其他任何内容中 运行 将其作为 Windows "scheduled task" 或花哨并设置服务(这远远超出这个问题的范围)。