shell腳本實(shí)現(xiàn)本地文件與服務(wù)器文件同步
為何創(chuàng)建此腳本是因?yàn)榉奖沩?xiàng)目的布署,不需要手動(dòng)地去同步不同的項(xiàng)目,而只需要簡(jiǎn)單的執(zhí)行shell腳本,輸入項(xiàng)目名就能發(fā)布到服器上。
1、shell文件代碼
#!/bin/sh read -t 30 -p "請(qǐng)輸入項(xiàng)目名:" name echo -e "\n" echo "項(xiàng)目名為:$name" case $name in cn) rsync -r ~/project1 root@192.168.18.2:/project1 --exclude="test.css" --progress ;; cnb2b) rsync -r ~/project2 root@192.168.18.2:/web/project2 --exclude="node_modules" --progress ;; *) echo "Ignorant" ;; esac echo "同步完成"
2、關(guān)鍵字解釋?zhuān)?/strong>
name表示要同步的文件名
--exculde="node_modules"表示過(guò)濾的文件夾
--progress 顯示文件同步進(jìn)程
3、文件新建并保存
將文件保存為name.sh
使用. name.sh執(zhí)行文件
4、具體進(jìn)程;
PS:shell腳本備份本地服務(wù)器的文件到遠(yuǎn)程服務(wù)器
遍歷本地文件夾下的所有文件名,分別壓縮后ftp傳送到遠(yuǎn)程服務(wù)器上保存
1 - 新建 backup.sh,寫(xiě)入腳本
#!/bin/bash local_ip=$(ifconfig | grep "inet addr" | grep -v 127.0.0.1 | awk '{print $2}' | awk -F ':' '{print $2}') backup_dir="/var/web_backup/data" date=`date +%Y%m%d` deldate=`date -d -14day +%Y%m%d` mkdir -p $backup_dir web_path="/mysite" web_dir=$(ls -l /mysite/ |awk '/^d/ {print $NF}') for web_name in $web_dir do if [ "$web_name" != "lost+found" ] then tar zcvf $backup_dir/$web_name.dump_$date.tar.gz $web_path/$web_name fi done ftp -n<<! open 10.XX.XX.XX user ftpuser ****** binary hash cd backups/web/$local_ip/ lcd /var/web_backup/data prompt mput *.tar.gz close bye ! rm -rf $backup_dir/*
2 - 修改屬性為可執(zhí)行
chmod 755 backup.sh
3 - crond定時(shí)任務(wù),每天晚上00:00:00執(zhí)行一次
0 0 * * * /var/backup.sh > /dev/null 2>&1
總結(jié)
以上所述是小編給大家介紹的shell腳本實(shí)現(xiàn)本地文件與服務(wù)器文件同步,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
使用Shell 腳本實(shí)現(xiàn)每隔100行插入一條記錄且記錄第一列包含行號(hào)其他列不變
本文通過(guò)實(shí)例代碼給大家講解了使用Shell 腳本實(shí)現(xiàn)每隔100行插入一條記錄且記錄第一列包含行號(hào)其他列不變的實(shí)現(xiàn)方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下2016-12-12一天一個(gè)shell命令 linux文本操作系列-chmod命令用法
這篇文章主要介紹了一天一個(gè)shell命令 linux文本操作系列-chmod命令用法,需要的朋友可以參考下2016-06-06Shell腳本之Expect免交互的實(shí)現(xiàn)
這篇文章主要介紹了Shell腳本之Expect免交互的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10linux設(shè)置定時(shí)任務(wù)的方法步驟
這篇文章主要介紹了linux設(shè)置定時(shí)任務(wù)的方法步驟,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2018-05-05檢查 Bash 中是否存在輸入?yún)?shù)的問(wèn)題
這篇文章主要介紹了檢查 Bash 中是否存在輸入?yún)?shù),通過(guò)本文向您展示如何檢查輸入?yún)?shù)是否存在或現(xiàn)有參數(shù)的數(shù)量,需要的朋友可以參考下2023-06-06