linux每日
『壹』 linux中weblogic的啟動腳本nohup輸出的日誌如何按每日生成
在腳本nohup設置每天開始拷貝日誌作為前一天的日誌備份,然後把當前日誌清空即可,代碼如下:
crontab-e
//增加:
00***cp/dirname/logfile.log/bakdir/logfile.`date-dyesterday+%Y%m%d`.log;cat/dev/null>/dirname/logfile.log
//每周日凌晨1:00打包、刪除文件:
01**0cd/bakdir;find./+mtime7-exectarcvflogfile.`date-dyesterday+%Y%U`.tar{};;find./-mtime91-execrm-f{};
『貳』 linux 通過scp命令自動將文件夾下的每日更新數據傳送到遠程windows目錄下。求腳本
你在win下創建一個ftp用戶
#!/bin/sh
#ftp server info
ip=*
user=*
pwd=*
plate=*
file=「*」
ftp -n $ip<<!
user $user $pwd
bin
hash
idle 7200
prompt off
mkdir $plate
cd $plate
put $file
bye
!
『叄』 linux 每日自動備份文件的腳本
1、比如每天產生一個/data/access.log這樣的文件,我們每天備份到backup目錄的access_2011-01-12.log.gz這樣的文件。
2、增加計劃任務
export
EDITOR=vi
crontab
-e
0
0
*
*
*
/data/bak.sh;
3、bak.sh文件內容如下:
cat
/data/bak.sh
#!/bin/bash
logs_dir=/data
bak_dir=/data/backup
bak_file=access_`date
+%Y%m%d`.log
#
tar
everyday
#echo
"begining
of
tar"
tar
zcf
$bak_dir/$bak_file.gz
$logs_dir/access.log
#
clear
bak_file
#echo
"clearing
file.log"
find
$bak_dir
-mtime
+7
-exec
rm
-rf
{}
\;
#end
求採納為滿意回答。
『肆』 linux系統每天自動巡檢,輸出到一個文件里
先把20台伺服器的ssh登陸語句寫進一個文本文件中host_name.txt,確保有一台機器可以通其他的19台伺服器。
ssh跳轉格式這樣寫:ssh 用戶名@ip
#!/bin/bash
check_sev()
{
ssh_ip=$1
$ssh_ip<<!
vmstat110
iostat110
exit
!
echo
}
echo`date"+%D"`>>check_host.log
whilereadline
do
echo"---------------------------------">>check_host.log
echo"$linedate'+%F%T'">>check_host.log
check_sev$line>>check_host.log
done<host_name.txt
將上面的腳本放在一個主機上,用crontab提交每日任務,
30 10 * * * 上面腳本的目錄地址
將以上內容寫進xx.cron中,crontabxx.cron 提交就是每天的10:30運行你上面的檢查腳本。
具體crontab的用戶你可以網路。
====================================================================
第一個腳本本人純手打,並沒有試,還有不少漏洞,你可以自行修改,比如你這個放腳本的伺服器必須能無密碼ssh登陸其他19個主機,腳本最好加上錯誤日誌記錄,防止某些錯誤導致腳本異常終止。你可以多調試幾遍,有問題的在一起交流。