簡體   English   中英

自動將日志文件從Unix服務器下載到Windows計算機

[英]Automatically download log file from Unix server to Windows machine

我有一台Unix服務器,在該服務器上不斷運行的應用程序會生成一個大型文本日志。 (每小時大約100兆)。

我的主要開發機器是Windows計算機,為了查看應用程序的運行狀況,我使用Filezilla將日志文件下載到PC,在這里我使用notepad ++瀏覽日志條目。

整個過程對我來說有點令人費解-所以您能推薦一個我可以在PC上運行的工具以連接到Unix框並自動下載日志文件-因此我可以在擁有所有功能的Windows計算機上對其進行剖析。所需的工具(我對Unix的訪問受到嚴格限制-因此實際上不能選擇在Unix框中查看日志文件)。

謝謝。

Windows本身具有這些工具。 使用ftp獲取文件。 您可以設置一個名為snatch.ftp的文件:

user
USERNAME
PASSWORD
get /location/of/logfile.txt logfile.txt
bye

(使用USER和PASSWORD的適當值),然后使命令文件( snatch.cmd )由調度的任務按照您希望的調度運行:

ftp -n -s:snatch.ftp

我不得不說,盡管對於任何日志文件而言,每小時生成100M並不是一個好主意。 可能這是必要的,但是您應該檢查為什么要生成這么多的數據以及它是否確實必要。

我還要注意,在整個網絡上每小時轉移100M。 我知道您說過您沒有對UNIX方面的大量訪問權,但是我仍然將其作為首選,尤其是因為UNIX下的文本處理工具不僅僅可以完成任務。

至少要考慮一下在UNIX端對日志文件進行一些過濾,然后再將其復制到自己的文件箱中。 您的網絡管理員將永遠感激:-)

您可以使用Windows的“預定作業”功能定期調用您的ftp客戶端嗎?

或者,換一種方式,您的Unix盒是否可以將文件推送到更易於訪問的位置,例如共享驅動器?

您可以創建一個批處理文件以將日志文件通過ftp(文件傳輸)ftp到PC。 例如,假設您的Unix服務器是10.10.10.10,那么您創建了一個名為ftp.txt的文件,

open 10.10.10.10
anonymous
test@somewhere.com
cd path
get file.log
quit 

然后在命令行上

c:\test> ftp -s:file.txt 
c:\test> notepad file.log

或者,由於您具有FileZilla,因此您可以查看文檔以查看是否有可以使用的命令行代替Windows ftp客戶端。

使用ftp batch命令從UNIX系統自動下載日志文件。

FTP(文件傳輸協議)是UNIX系統常用的文件傳輸實用程序。

FTP能夠使用腳本(來自外部文件的命令列表)。 以下示例演示了一個腳本,該腳本打開與IP地址11.11.11.11的連接,以訪客身份使用密碼“ guest”登錄到主機,上載File1文件,然后退出:

open 11.11.11.11
user
guest
guest
put file1
quit

http://support.microsoft.com/kb/96269

看來,最簡單,最可靠的方法是獲取Windows的WGet並使用批處理文件中的wget ftp:// login:password @ host / path / file的語法進行調用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM