首页
运维教程
Linux基础
系统服务
系统架构
数据库
shell脚本
虚拟化
大数据
DevOps
企业案例
运维开发
python
go语言
运维安全
行业资讯
网络基础
系统安全
运维面试
学习路线
学习方法
面试题库
职场解惑
软件
运维软件
办公软件
书籍资源
技术陪跑营
重要信息
首页 运维教程shell脚本使用函数封装-公司自动化处理文件备份管理脚本

使用函数封装-公司自动化处理文件备份管理脚本

 
#!/bin/bash

srcPath=””
dstPath=””

ErrMsg=”Yout enter the directory or file dose not exist. ”
DstDirMsg=”Please input destination dircetory”
SrcFilesMsg=”Please input source dircetory or file.”
DstFilesMsg=”Delete the file or dircetory. ”
DirFileMsg=””

function inputSourcePath(){
while true
do

        echo DirFileMsg
        read srcPath
        if [  -d
srcPath -o -f srcPath  ]; then

                if [ -esrcPath ]; then
                        break
                fi

        fi
        echo “ErrMsg”

done
}

function inputDstPath(){
while true
do
        echoDstDirMsg
        read dstPath
        if [  -d dstPath -a -edstPath ]; then

                break
        fi
        echo “ErrMsg”
done
}

function copy(){
while true
do
        inputSourcePath
        inputDstPath

        if [ srcPath != dstPath  -a  -dsrcPath  ]; then
                break

        elif [ -f $srcPath -a  dirname $srcPath != dstPath ]; then
                break

        fi

        echo “The source and destination cannot be the same! Please input again”

done

cp -a srcPath dstPath
echo “The files have been susscessfully copied.”

}

function delete(){

        inputSourcePath

        echo “Proceed with removal? y”
        read yn
        if [yn “y” ]; then
                rm -rf $srcPath
                echo “sussessfully delete!”
        fi

}

function backup(){

        inputSourcePath
        inputDstPath

        backName=date -d today +%Y%m%d%H%M%S
        cd dstPath
        tar -czvf  “
backName.tar.gz” srcPath
        echo “A successful backup to
dstPath/backName.tar.gz”
}

while true
do

echo “*******************************************”
echo ” 1 Copy”
echo ” 2 Delete”
echo ” 3 Backup”
echo ” 4 Quit ”
echo “*******************************************”

read op

caseop in
        1)
        echo “You selection is Copy”
        DirFileMsg=SrcFilesMsg
        copy
        read -p “Press any key to continue…”
        clear
        ;;
        2)
        echo “You selection is delete”
        DirFileMsg=
DstFilesMsg
        delete
        read -p “Press any key to continue…”
        clear
        ;;
        3)
        echo “You selection is Back”
        DirFileMsg=$SrcFilesMsg
        backup
        read -p “Press any key to continue…”
        clear
        ;;
        4)
        echo “Exit…”
        break
        ;;
        *)
        echo “Error! invalide selection, try again”
        ;;
esac
done

本文链接:http://www.geekyunwei.com/1855.html

网友评论comments

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

暂无评论

Copyright © 2021 极客运维 公众号《极客运维之家》
扫二维码
扫二维码
返回顶部