2012-08-10 78 views
0

我有一個Java程序需要從某個文件讀取。該文件應該每天只創建一次。另一個程序創建該文件。我如何使用shell腳本檢查文件是在今天創建的(上午午夜/ 12點)?檢查文件是否是今天創建

東西沿着

if (file created today) 
// process 
else 
// remove old file 
// create new file 
// process 

我已經看到了使用find命令的例子線,但我已經知道該文件的名稱。

TL;博士

我如何檢查是否文件是在一個shell腳本創建的今天?我知道文件的名稱。

+1

By _today_你的意思是在過去的24小時內,還是你的意思是從上一個午夜開始,如果是這樣,你的意思是在當前時區還是UTC? – 2012-08-10 05:51:45

+0

我可以看到你爲什麼問這個問題。對不起,我不清楚。我的意思是當前時間的前一個午夜。否則,我可以使用-ctime/-mtime。 – Anon 2012-08-10 05:52:43

+0

@anon - 如果它是'if(find not today today)remove and create new file,那麼腳本不會更好(更容易);網絡連接; process'? – 2012-08-10 05:59:48

回答

1

爲什麼不使用cron在午夜刪除/創建文件(如果這是你的意思)?

或者

在創建文件(當它不存在)設立at在作業刪除它在24小時內(對於其它意義上的)?

+0

完美!謝謝 – Anon 2012-08-10 06:07:00

1

你不能,因爲創建時間不存儲在* nix上。您可以使用stat(1)來檢查上次修改時間。

+0

@Anon:對,傻了。固定。 – 2012-08-10 05:58:43

相關問題