参数处理(一)使用 case 语句处理命令行参数

下面是一个简单的使用示例:

#! /bin/bash

shopt -s nocasematch

case $1 in
    sql)
        echo "Running mysql backup using mysqldump tool..."
        ;;
    sync)
        echo "Running backup using rsync tool..."
        ;;
    snap)
        echo "Running snapshot backup on storage..."
        ;;
    *)

echo "Backup utility"
echo "Usage: `basename $0` {sql|sync|snap}"
echo "       sql : Run MySQL backup utility."
echo "       sync : Run Web server backup utility."
echo "       snap : Run snapshot backup utility."
;;
esac
shopt -u nocasematch

注意我们在示例中使用了 nocasematch 选项,开启此选项后,当执行 case 或者 “[[” 条件命令时,Shell 以大小写不敏感的匹配模式。

使用效果图:

参数处理(一)使用 case 语句处理命令行参数_第1张图片
使用效果

本文参考自 《Linux Shell命令行及脚本编程实例详解 》

你可能感兴趣的:(参数处理(一)使用 case 语句处理命令行参数)