Shell 學習(六、case...esac的使用和萬用字元)
阿新 • • 發佈:2019-02-09
#!/bin/bash
echo "請輸入編號 選擇不同的顯示檔案和目錄方式:"
echo "1 - 普通顯示"
echo "2 - 詳細顯示"
echo "3 - 顯示隱藏檔案"
echo "4 - 退出"
read num1
case $num1 in
1) ls ;;
2) ls -l ;;
3) ls -la ;;
4) exit ;;
esac
------------------------------------------------
#!/bin/bash
echo "請輸入要解壓的檔名"
read file1
case "${file1##*.}" in
gz)
tar -xzvf ${file1}
;;
zip)
unzip ${file1}
;;
*)
echo "很抱歉,無法解壓這種格式"
exit
;;
esac
${file1##*.} 字串的擷取,意思就是擷取檔名"."之後的字串
例如: test.gz 擷取後 為 gz , test.zip擷取後為 zip
* 萬用字元, 表示 0或者0以上的全部匹配
mkdir test
zip test.zip test
tar -czf test.tar.gz test
echo "請輸入編號 選擇不同的顯示檔案和目錄方式:"
echo "1 - 普通顯示"
echo "2 - 詳細顯示"
echo "3 - 顯示隱藏檔案"
echo "4 - 退出"
read num1
case $num1 in
1) ls ;;
2) ls -l ;;
3) ls -la ;;
4) exit ;;
esac
------------------------------------------------
#!/bin/bash
echo "請輸入要解壓的檔名"
read file1
case "${file1##*.}" in
gz)
tar -xzvf ${file1}
;;
zip)
unzip ${file1}
;;
*)
echo "很抱歉,無法解壓這種格式"
exit
;;
esac
${file1##*.} 字串的擷取,意思就是擷取檔名"."之後的字串
例如: test.gz 擷取後 為 gz , test.zip擷取後為 zip
* 萬用字元, 表示 0或者0以上的全部匹配
mkdir test
zip test.zip test
tar -czf test.tar.gz test