在Java中从远程Linux服务器聚合日志文件?

时间:2014-06-30 06:15:29

标签: java linux ssh

我从未使用过从linux机器上读取文件,也不知道如何继续。我有多个Linux服务器,可以通过ssh访问。每台机器都有一个日志文件,其中包含一些数据,比如一些ip地址。现在如何编写Java代码以从这些日志文件中查找每个IP地址的计数?

我在另一篇文章中读到,我可以使用JSch库来ssh到linux服务器并读取文件。但是,我如何汇总所有文件?我假设将这些文件复制到本地计算机然后执行聚合会非常低效吗?

1 个答案:

答案 0 :(得分:0)

您可以使用exec.java示例开始。命令为grep "ip address" /path/to/log_file | wc -l

但是,如果日志文件太大并且grep占用了更多资源,则必须在本地复制它们并对它们执行字符串搜索。在这种情况下,您可能希望从scpfrom.javasftp.java

开始