find命令 linux日誌定期遷移指令碼

2022-08-11 17:18:14 字數 1286 閱讀 1661

find  pathname  --options  [-exec -print -ok ..]

pathname:find命令查詢的目錄路徑

-print:find命令將匹配的檔案輸出到標準輸出

-exec:find命令對匹配的檔案執行該引數給出的shell命令.格式為: command {} \;

-ok:類似與exec的作用

-name:按照檔名進行查詢

-perm:按檔案許可權來查詢

-user:按檔案的使用者主查詢

-group:按檔案的使用者組查詢

-type:查詢某一型別的檔案

b -- 塊裝置檔案

d -- 目錄

c -- 字元裝置檔案

p -- 管道檔案

l -- 符號鏈結檔案

f -- 普通檔案

-mtime:按照檔案的更改時間來查詢檔案

-n -- 表示檔案更改時間距現在n天以內

+n -- 表示檔案更改時間距現在n天以前

使用了find命令的mtime引數,將2個星期前的日誌檔案統一遷移到指定目錄下,有需要的同學可以參考

#!/bin/bash

#1.標準定義

backup_dir="/backup/log"

keep_days=14

week_num=`date +%w`

flag=`expr $week_num % 2`

#2.需要遷移目錄

test1="/var/log/nginx/test1"

migrate_dir=($test1)

#3.遷移備份,每兩周執行一次

if [ $flag -eq 1 ];then

for dir in $

do if [ -d $dir ]; then

#構建遷移目錄

if [ ! -d $backup_dir$dir ];then

mkdir -p $backup_dir$dir

fi#檔案遷移

for file in `find $dir -type f -mtime +$keep_days -exec ls {} \;`

domv $file $backup_dir$dir

done

fidone

fi

#日誌定期遷移指令碼

0 4 * * 7/2 /home/wangzhengyi/scripts/clean-scripts/migrate.sh

linux 定期清除日誌

clearlog.sh bin sh find usr local apache logs mtime 30 name log exec rm 說明 find linux查詢命令,使用者查詢指定條件的檔案 usr local apache logs 需要進行清理的目標目錄 mtime 標準語句寫法 ...

find 命令 Linux命令篇 find命令

find name txt o name pdf print演示結果 find regex txt pdf iregex 忽略大小寫的正則 查詢所有非txt文字 find name txt print演示結果 列印出當前目錄的檔案 深度為1 find maxdepth 1 type f演示結果 5....

Linux 命令 find 命令

find是日常工具箱中功能更強大 更靈活的命令列工具之一,因此值得花費更多的時間。最簡單的,find跟上路徑尋找一些東西。例如 find 它將找到 並列印出 系統中的每個檔案。而且由於一切都是檔案,你會得到很多需要整理的輸出。這可能不能幫助你找到你要找的東西。你可以改變路徑引數來縮小範圍,但它不會比...