shell指令碼-備份上個月的檔案
前提檔案包含日期
#!/bin/bash
#輸出上個月的日期
last_month=$(date -d "$(date +%Y%m)01 last month" +%Y%m)
echo $last_month
cd /log/
#查詢所有上個月日期的檔案
file=$(ls -d $last_month*)
#執行壓縮到備份目錄
zip -qrv /log/bak/$last_month.zip $file
crontab自動任務每月1號執行
** 1 * * /root/linan/bak_log.sh > /dev/null 2>&1 &
相關推薦
shell指令碼-備份上個月的檔案
前提檔案包含日期 #!/bin/bash #輸出上個月的日期 last_month=$(date -d "$(date +%Y%m)01 last month" +%Y%m) echo $last_month cd /log/ #查詢所有上個月日期的檔案 file=$(ls -d
shell指令碼實現rysnc檔案備份以及資料傳輸校驗
通過shell指令碼整合了rsync(daemon)守護程序模式對檔案備份以及進行md5校驗的功能。 #!/bin/bash file=access_2018-12-8.logtarfile=./backup$(date +%F).tar.gz tar zcf $tar_file $filemd5sum
shell指令碼限制日誌檔案大小和行數
背景: 專案server在後端持續執行,日誌檔案不斷變大,需及時進行清空。 解決方案:編輯sh指令碼,指定時間間隔輪詢;將超出限制的日誌檔案,先備份,再清空原日誌檔案內容。 清空日誌檔案內容的方法有: 1
Linux Shell 指令碼讀取配置檔案
一、應用場景 為了靈活應用shell指令碼,適當的加入配置檔案,對於後期的維護和優化會有很大幫助。例如指令碼中使用的檔案/檔案路徑,都可以通過讀取配置檔案完成。 配置檔案 filename=boomlee 指令碼檔案 #!/bin/bash workdir=$(cd $(di
shell指令碼抽取文字檔案中指定字串的方法:sed+grep方法、awk+grep方法(必要時可以聯合sed以及grep)、grep+cut方法
在linux中經常要對一些動態的文字檔案抽取指定的字串,比如執行ps命令後想要獲取指定的執行程序(如ps自己)的PID號(同一個程序每次啟動的時候pid號是隨機分配的)。該怎麼辦呢?當然,可以用一些擷取字串的方法,這裡介紹一下用2種方法來解決這類問題。 一、sed+grep方法: 首先大概瞭
shell指令碼執行sql檔案及語句
由於經常操作資料庫,遇到頻繁建表、加欄位、索引、修改資料等問題,大多是操作多個數據庫,sql檔案或語句不固定,最後選擇shell指令碼來執行 eg: 1.多庫建相同的表 #/bin/bash host='127.0.0.1' dbUser='root' dbPassword=
shell-zip備份上個月的日誌(目錄)
#!/bin/bash last_month=$(date -d "$(date +%Y%m)01 last month" +%Y%m) echo $last_month cd /PTAH file=$(ls -d $last_month*) zip -qrv /log/bak
shell指令碼備份更新資源
當檢測到更新目錄內有新的欲更新資源時備份舊的資源並更新新資源 先拷貝資源目錄內的舊資源(備份),然後再對比預備的資源目錄與資源,不存在的目錄直接拷貝,已經存在的目錄先刪除再拷貝 #!/bin/bash
shell指令碼載入資料檔案到hive表中
如果執行時間允許,還可以增加判斷hive表是否存在的。 #!/bin/ksh #------------------------------------------------------------------------------------- #-
Shell指令碼備份Mongodb資料庫
目錄 環境還原 環境建立 編寫shell指令碼 準備檔案 建立shell指令碼 執行shell指令碼 進階版 感謝 誠邀訪問我的個人部落格:我在馬路邊 更好的閱讀體驗點選檢視原文:Shell指令碼備份Mongodb資料庫 原創部落格,轉
儲存過程使用shell指令碼執行sql檔案
今天接到的需求是把所有表的建立寫到儲存過程裡面。 收到建立表的指令碼之後就傻了,60-70個表,還包含儲存過程、檢視等。 那麼如何解決呢。 思路就是在儲存過程裡面使用shell指令碼執行sql指令碼檔案。 通過MSDN得到執行shell的函式:xp_cmdshell。 下面
【shell】shell指令碼在大檔案日誌中按照時間段快速搜尋日誌
問題描述: 在大流量線上服務中,日誌系統會產生數量龐大的日誌,動輒就是幾十G。在如此之大的檔案中快速搜尋日誌是運維人員經常遇見的問題。我們經常遇見的問題是查詢一段時間內的某些條日誌。比如,今天有一
shell指令碼進行sftp檔案下載
方式一: #/usr/bin/expect -f set userna zhangsan set passwd 123456 set ip 192.168.0.1 set dir /123/456 spawn sftp [email protected]$ip expect "pass
ed編輯器--適用於shell指令碼內編輯檔案的最最簡單編輯器
ed #啟用 ed 命令 My name is Titan. #輸入第一行內容 And I love Perl very much. #輸入第二行內容 .
【Linux】Shell - 指令碼練習 - 擷取檔案內容
寫一個指令碼 依次向/etc/passwd中的每個使用者問好,並且說出對方的ID是什麼 例如:Hello root, your UID is0. 方法1:使用awk指定分隔符 cat /etc/passwd | awk -F ":" '{print "H
寫一個shell指令碼將一個檔案下超過100KB的檔案,複製到另一個資料夾下
指令碼編寫: (0)建立的指令碼檔案,先用vi命令開啟,瞎寫一些東西 (推薦) (1)第一行內容是固定的 #!/bin/sh (2)涉及到的目錄,
[MySQL] shell指令碼備份mysql裡面所有資料庫到遠端伺服器
本地資料庫mysql,有多個數據庫要備份到遠端伺服器上,遠端伺服器提供vsftp服務1 - 建立一個shell指令碼,寫入以下內容並儲存vi.mysql_back.sh寫入#!/bin/bash BIN_DIR="/usr/bin" BACKUP_DIR="/var/mys
Linux Shell 指令碼自動建立檔案並修改其許可權
在學習《Linux命令列與shell指令碼程式設計大全》第三版時,每次執行書上的程式碼時,需要建立一個testxx.sh檔案,修改其執行許可權,最後再用vim來編輯。這樣一個重複的過程,可以通過書中學習的知識編寫一個指令碼來自動解決,該指令碼命名為NewTest
【Linux】使用SHELL指令碼實時檢視檔案大小
使用SHELL指令碼重複執行ls命令並將結果寫入檔案 1、編寫shell指令碼,存在/root/下,ls.sh date >> ls.txt 2>&1 while (true) do ls -l -k hhhhh >>ls.txt
shell指令碼中與檔案判斷相關的指令
-e filename 如果 filename存在,則為真 -d filename 如果 filename為目錄,則為真 -f filename 如果 filename為常規檔案,則為真 -L filename 如果 filename為符號連結,則為真