shell 執行ftp的動做和日誌合併

1、ftp根據日期下載當前的文件web

#!/bin/bash
date=` date +%Y%m%d`
ftp -n <<!
open 192.168.10.14
user zzx Z@123456
binary
lcd /opt/zzx
prompt
mget bj.log-$date.txt
close
bye


2、根據日誌上傳當前的文件bash

#!/bin/bash
date=` date +%Y%m%d`
ftp -n <<!
open 192.168.10.14
user zzx Z@123456
binary
lcd /opt/zzx
prompt
mput bj.log-$date.txt  //mput 上傳文件
close
bye


3、多及目錄上傳下載ide

#!/bin/bash
date=` date +%Y%m%d`
ftp -n <<!
open 192.168.10.14
user zzx Z@123456
binary
cd /one
lcd /opt/zzx
prompt
mput bj.log-$date.txt
cd /two
lcd /opt/zzx
mput bj.log-$date.txt
close
bye
!



4、多及目錄日誌整合spa

#!/bin/bash
date=` date +%Y%m%d`
one=/opt/log/coutlogs/zzxweb1/201511
two=/opt/log/coutlogs/zzxweb2/201511
gunzip $one/bj.log-$date.gz
gunzip $two/bj.log-$date.gz
touch /opt/tiandaolog/count/bj.log-$date
NewLog=/opt/bj/count
for log in bj.log-$date
  do
    sort -m -t " " -k 4 -o  $NewLog/$log $one/$log $two/$log
done


5、升級腳本整合腳本.net

#!/bin/bash
date=` date +%Y%m%d`
yue=` date +%Y%m`
one=/opt/zzx/coutlogs/1/$yue
two=/opt/zzx/coutlogs/2/$yue
NewLog=/opt/zzx/count
logs=zzx.log-$date
if  [ ! -d "$one" ]||[ ! -d "$two" ] ; then
mkdir -p "$one" "$two"
else
if [ ! -f "$one/$logs.gz" ]||[ ! -f "$two/$logs.gz" ] ; then
ftp -n <<!
open 1192.168.10.12
user zzx Z@123456
binary
cd /1
lcd $one
prompt off
mget bj.log-$date.gz
bell
cd /2
lcd $two
mget bj.log-$date.gz
close
bye
!

else
gunzip -c $one/zzx.log-$date.gz >$one/$logs
gunzip -c $two/zzx.log-$date.gz >$two/$logs
touch /opt/zzx/count/zzx.log-$date
for log in zzx.log-$date
  do
    sort -m -t " " -k 4 -o  $NewLog/$log $one/$log $two/$log
done
fi
fi
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.zzxtbl.top.com
rm -f $NewLog/bj.log-$date
rm -f $one/bj.log-$date
rm -f $two/bj.log-$date


計劃任務crontab -e 5點:00執行
vi /etc/crontab
0 5 * * * * root /opt/ftpmput.sh


小結:把以上腳本另存爲文件加入到crontab中便可實現ftp自動上傳、下載文件。
日誌

註解:
1. -n 不受.netrc文件的影響。(ftp默認爲讀取.netrc文件中的設定)
2. << 是使用即時文件重定向輸入。
3. !是即時文件的標誌它必須成對出現,以標識即時文件的開始和結尾。orm

相關文章
相關標籤/搜索