2015-10-07 15 views
1

我正在尋找方法來檢查一個平面文件在特定位置的大小,如果它是零或其他。目前,我正在通過去該位置手動進行檢查。這是我不時做這件事的乏味工作。有人能從這裏引導我嗎?它可能是服務器中的一個shell腳本,當我運行它時,它會向我和其他人發送一封電子郵件。UNIX腳本發送警報郵件,如果文件大小的平面文件爲零或否則

希望得到您的迴應。我在這裏看到的所有批處理文件都不適用於我。

樣本:

位置

服務器名/文件夾1 /文件夾2/folder3

文件:test_file.dat 0字節

回答

2

你可以使用這樣的事情:

#!/bin/bash 
# Test file with full path 
if [ ! -s /tmp/test.dat ]; then 
    mail '[email protected]' -s 'test.dat is empty' < /dev/null 
fi; 

使用cront創建一個cron作業AB -e,將檢查每五分鐘

*/5 * * * * /home/user/check.sh 

一定要設置在/home/user/check.sh執行位與

chmod +x /home/user/check.sh 

注:

  • 的郵件內容是主題,郵件中沒有其他文本,因爲有足夠的空間來傳達主題行上的信息
  • 您可能需要使用其他程序的方法比郵件,根據您的操作系統,你可能需要更新的命令行參數以及
+0

嗨,關於腳本,可以讓我知道哪裏是條件語句?似乎腳本沒有返回任何主題或電子郵件內容。感謝您的幫助 –

+0

我用你的例子通過刪除!因爲如果它不是空的,我想通過電子郵件發送文件。當然,也可以用實際的文件名替換/ dev/null,這樣電子郵件的正文就是文件內容。請注意,如果沒有正文,它會拋出一個錯誤,並且(奇怪的是)我的郵件客戶端拒絕下載它(它在服務器上,所以它工作得很好,但我的郵件客戶端不喜歡它)。因爲我想要的內容,我不在乎。 – TheSatinKnight

相關問題