酷!學園

技術討論區 => Linux 討論版 => 主題作者是: akong 於 2007-03-14 16:02

主題: 刪除三十天前的檔案
作者: akong2007-03-14 16:02
各位大大安安
小弟有一個問題想請問
假如我希望在Linux下
刪除某個資料夾下的檔案日期在三十天前的檔案
假如某個檔案建立日期在1/1
那我希望在1/31當天程式會自動刪除那個檔案
因為小弟不懂程式
真的不知該如何下手
但因為資料量太大
也不可能一個一個刪除
謝謝
主題: 刪除三十天前的檔案
作者: harrier2007-03-14 17:17
cd [destfolder]
find . -type f -mtime +30 -exec rm -f

如果要測試..請小心確認一下~
主題: 刪除三十天前的檔案
作者: akong2007-03-14 18:35
感謝大大的指導
我會測試並小心使用的
謝謝
主題: 刪除三十天前的檔案
作者: akong2007-03-14 20:04
當我執行find . -type f -mtime +30 -exec rm -f
出現了exec 後缺少了參數
請問一下是有錯誤嗎?
主題: 刪除三十天前的檔案
作者: Alan Liu2007-03-14 20:21
如果是這樣呢?
find . -type f -mtime +30 -exec rm -f {} \;
主題: 刪除三十天前的檔案
作者: akong2007-03-15 10:42
感謝大大的提供
到時候我會進行測試的
謝謝
主題: 刪除三十天前的檔案
作者: apage2007-03-15 14:43
嗯...個人提供一個建議,
除非空間非常不夠用,不然可以直接排程移動到他處或是壓縮起來..
非常嚴謹的刪除應該留在最後比較保險...
當然我不會光說不練啦~~以下是我使用的方法:
代碼: [選擇]
YMD=$(date +"%G%m%d")
cp /var/mail/pm /root/pm_mailbak/pm.$YMD
tar -zcvf /root/pm_mailbak/pm.$YMD.tar.gz /root/pm_mailbak/pm.$YMD


備份mail box 並壓縮起來的 shell script

crontab -e 設定每兩個月的1號凌晨12點跑一次
代碼: [選擇]
0 12 1 */2 * /root/mail_bak
檔名會按照日期...
同時會保留正常box, 等我有空時再去一個一個刪除,
但壓縮檔案我是能留就留啦...
萬一有需要,還可拿出來,如果壓縮檔壞掉
也不會有人責怪得很嚴重吧,
畢竟那是機器在壓縮,備份機制你都想到了...
如果是超重要的東西,你沒更多資源做更詳細的保存那也無法改變什麼...@@
反正記得刪除前都要跟老闆商量就是了...
如果老闆沒時間想那麼多,那就先備份起來再說@@
主題: 刪除三十天前的檔案
作者: akong2007-03-15 15:54
感謝大大的提醒
小弟會需要刪除某些檔案的原因是這樣子的
小弟有架一個samba server
並且為了避免同事會誤刪檔案而導致資料不見
我有啟動網路芳鄰資源回收筒
這樣user若誤刪了可以馬上救回來
時效上快一點
但是日子久了
回收筒的容量也就愈來愈大
所以我才會希望一段時間把三十天前的檔案刪除
不然空間總會有一天不夠的
再次謝謝大大的提醒
主題: 刪除三十天前的檔案
作者: fz150n2007-03-17 09:54
(http://www.roicat.com.tw/pict/fz150n-post.jpg)
(好像限制得有點嚴格,這樣會被判定成注音文說~所以我只好先弄成jpg了)
主題: 刪除三十天前的檔案
作者: twu22007-03-17 10:31
引述: "fz150n"
(http://www.roicat.com.tw/pict/fz150n-post.jpg)
(好像限制得有點嚴格,這樣會被判定成注音文說~所以我只好先弄成jpg了)


你第一行的 "一" 和後頭的好像不一樣, 可能打到注音字了.
主題: 刪除三十天前的檔案
作者: Darkhero2007-03-17 11:47
引述: "twu2"
引述: "fz150n"
(http://www.roicat.com.tw/pict/fz150n-post.jpg)
(好像限制得有點嚴格,這樣會被判定成注音文說~所以我只好先弄成jpg了)


你第一行的 "一" 和後頭的好像不一樣, 可能打到注音字了.


正確的 "一"
在細明體上,最後面會鉤起來一點點...