當前位置:首頁 » 網頁前端 » linux刪除近期文件的腳本
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

linux刪除近期文件的腳本

發布時間: 2022-05-18 06:07:19

㈠ linux里編寫個腳本如何刪除30天之前建立的文件夾

你好一行命令就好了。
find /文件路徑 -name "dirName" -mtime +30 -exec rm {} \;

㈡ linux 下如何編寫定時刪除某目錄下文件的腳本

自己編寫crontab設定計劃任務就是了,
那個服務就是做這些定時的,自動化的工作用的。要寫什麼腳本的,一個命令搞定。
給你個手冊頁自己看吧。
補充回答:
運行這個命令:
crontab
-e
此命令將打開一個文本編輯器以添加新任務。
*
20
*
*
*
rm
-rf
/root/febhost/dat/*
/root/febhost/log/*
用對應的文本編輯器命令保存退出(vi編輯器是按esc後打:wq)
如果你對這種方式不熟悉,也可以直接改/etc/crontab,我看到你是要刪除root文件夾內的目錄,假設你有root許可權(因為/etc/crontab所有者是root,並且只有以root身份執行刪除命令才能刪除root
home內的文件),用以下命令打開此文件:
vi
/etc/crontab
將游標移動至最後一行,按o鍵新開一行輸入以下內容:
*
20
*
*
*
root
rm
-rf
/root/febhost/dat/*
/root/febhost/log/*
給你解釋下此行的含義吧,前五個以4個空格分隔開的值依次表示:分、時、日、月、周,如果取所有值就是打*號,如果你想周期性的運行一個任務,crontab也接受范圍指定,比如說一天中的早8點到晚6點每隔一小時(就是每兩小時,將會在8,10,12,14,16,18執行)執行你這個刪除命令這樣寫:
*
8-18/2
*
*
*
root
rm
-rf
/root/febhost/dat/*
/root/febhost/log/*
第一個欄位是分鍾,取值范圍:0-59
第二個欄位是小時。取值范圍:0-23
第三個欄位是一個月中的第幾天,取值范圍:1-31
第四個欄位是一年中的第幾個月,取值范圍:1-12
最後一個欄位是一個星期中的第幾天,以星期天開始依次的取值為0~7,0、7都表示星期天。
下一個欄位是執行該命令的用戶身份,這里是root用戶,最後一個欄位就是定時運行的命令。

㈢ linux 自動刪除文件腳本

rm_/opt/scommnet/upload()
{
find / -type -f -mtime +2 -exec rm {} \;
}

然後把這個函數放入用戶的.bash_profile中去,就可以開機自動刪除2 天前創建或修改的文件了

如果你是root ,那麼你的.bash_profile文件就在根目錄下中,如果你是普通用戶,那麼這個文件,就在$HOME中
find命令在「/」下查找普通文件,修改時間在2日以內的文件,-exec是來執行命令,rm的,後面的{} \;是-exec執行命令時必須加上的東西
試下吧,祝你好運

㈣ linux系統如何自動刪除幾天前文件夾

find /usr/你的目錄/ -mtime +7 -name "*" -exec rm -rf {} \;
在你指定的目錄,尋找最後一次修改,距你執行時間大於7天的文件並刪除

㈤ linux 如何刪除 腳本

運行這個命令:
crontab -e
此命令將打開一個文本編輯器以添加新任務。
* 20 * * * rm -rf /root/febhost/dat/* /root/febhost/log/*

用對應的文本編輯器命令保存退出(vi編輯器是按esc後打:wq)

如果你對這種方式不熟悉,也可以直接改/etc/crontab,我看到你是要刪除root文件夾內的目錄,假設你有root許可權(因為/etc/crontab所有者是root,並且只有以root身份執行刪除命令才能刪除root home內的文件),用以下命令打開此文件:
vi /etc/crontab
將游標移動至最後一行,按o鍵新開一行輸入以下內容:
* 20 * * * root rm -rf /root/febhost/dat/* /root/febhost/log/* 更多Linux知識可參考書籍《Linux就該這么學》。

㈥ linux腳本 刪除文件

命令:
find / -type f -name '*.out' 2>/dev/null -exec rm {} \;

參數解釋:

/ : 從根目錄開始查找;

-type f : 只查找一般文件,忽略目錄,連接,套接字等其他文件(比如說目錄 dir.out);

-name '*.out' : 指定查找名稱;

2>/dev/null : 將錯誤信息置空。(可能出現的情況就是:刪除操作的用戶許可權不夠,有錯誤信息)

-exec rm {} \; : 對找到的文件執行刪除操作。

㈦ linux 刪除文件夾腳本

給你個思路,不懂問我,如果想要我幫你寫出來,你可以加點分啊

查找半年的文件可以用find命令
find 的-mtime 按更改時間 find . -mtime -5 -print -表示在5天之內更改過的 find . -mtime +5 -print +表示在5天之前更改過的

每周日刪除可以用到cronta(具體使用方法請網路)

無法是每個周日腳本運行一次,cd到指定文件夾,利用find命令找到對應的文件刪除就ok了

㈧ linux定時刪除一個目錄的腳本

可以使用find的 ctime 選項,
ctime的意思是最後修改的時間 +3 表示三天前,也就是在 /backup_100 目錄里 找到三天前的符合 abc*的文件及目錄並刪除。
find /backup_100 -name "abc*" -ctime +3 -exec rm {} \;
如果每天備份多次,
可以使用 NUM=`ls|wc -l`;DEL_NUM=$(($NUM-3)); for i in `ls -tr|head -$DEL_NUM`;do rm -rf $i;done

這樣,首先判斷當前備份了$NUM次,也就是/backup/abcxxx里有多少個文件夾,
然後NUM-3就是需要刪除的文件夾的個數,
然後使用循環,
ls -tr|head -$DEL_NUM 這樣通過按時間升序排列取前$DEL_NUM個目錄名並依次刪除,最後就只剩下了最新的三個目錄了。
然後把這樣的腳本添加到你的自動備份腳本的最後面就可以了

㈨ linux刪除30天前文件命令

1.刪除文件命令:

find 對應目錄 -mtime +天數 -name "文件名" -exec rm -rf {} ;

實例命令:

find /opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} ;

說明:

將/opt/soft/log/目錄下所有30天前帶".log"的文件刪除。具體參數說明如下:

find:linux的查找命令,用戶查找指定條件的文件;

/opt/soft/log/:想要進行清理的任意目錄;

-mtime:標准語句寫法;

+30:查找30天前的文件,這里用數字代表天數;

"*.log":希望查找的數據類型,"*.jpg"表示查找擴展名為jpg的所有文件,"*"表示查找所有文件,這個可以靈活運用,舉一反三;

-exec:固定寫法;

rm -rf:強制刪除文件,包括目錄;

{} ; :固定寫法,一對大括弧+空格++;

2.計劃任務:

若嫌每次手動執行語句太麻煩,可以將這小語句寫到一個可執行shell腳本文件中,再設置cron調度執行,那就可以讓系統自動去清理相關文件。

2.1創建shell:

touch /opt/soft/bin/auto-del-30-days-ago-log.sh

chmod +x auto-del-30-days-ago-log.sh

新建一個可執行文件auto-del-30-days-ago-log.sh,並分配可運行許可權

2.2編輯shell腳本:

vi auto-del-30-days-ago-log.sh

編輯auto-del-30-days-ago-log.sh文件如下:

#!/bin/sh

find /opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} ;

ok,保存退出(:wq)。

2.3計劃任務:

#crontab -e

將auto-del-30-days-ago-log.sh執行腳本加入到系統計劃任務,到點自動執行

輸入:

10 0 * * * /opt/soft/log/auto-del-7-days-ago-log.sh >/dev/null 2>&1

這里的設置是每天凌晨0點10分執行auto-del-7-days-ago-log.sh文件進行數據清理任務了。

㈩ linux 怎麼刪除某一天的文件,比如今天是13號,我要怎麼刪除9號 文件

你可以寫一個腳本文件,然後執行這個腳本文件就ok了
腳本內容如下:
1.找到9號的文件(具體日期)
2.刪除