練習一:
1、接收引數,提示輸入的引數是什麼型別:
#!/bin/bash
#program:
#接收引數並輸出引數型別
#history donggen 2016-10-27-17:20
path=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bansh
export path
case $1 in
[[:digit:]])
echo "it is digit"
;;[[:lower:]])
echo "it is lower"
;;[[:upper:]])
echo "it is upper"
;;*)
echo "it is unknown"
;;esac
練習二:
2、寫乙個指令碼,可以接受選項及引數,而後能獲取每乙個選項,及選項的引數;
並能根據選項及引數做出特定的操作。比如administrators.sh -add tom,jerry --del tom,blair
-v|--verbose -h|--help
#!/bin/bash
#program:
#練習接收引數,並獲取引數
#history donggen 2016-10-27-22:40
path=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bash
export path
debug=0
add=0
del=0
for i in `seq 0 $#`; do
if [ $# -gt 0 ]; then
case $1 in
-v|--verbose)
debug=1
shift ;;
-h|--help)
echo "usage:`basename $0` --add user_list --del user_list -v|--verbose -h|--help"
exit 0
;;--add)
add=1
addusers=$2
shift 2
;;--del)
del=1
delusers=$2
shift 2
;;*)
echo "usage:`basename $0` --add user_list --del user_list -v|--verbose -h|--help"
exit 7
;;esac
fidone
if [ $add -eq 1 ]; then
for user in `echo $addusers |sed 's@,@ @g'`; do
if id $user &>/dev/null; then
[ $debug -eq 1 ] &&echo "$user exists."
else
useradd $user
[ $debug -eq 1 ] &&echo "add user $user finished."
fidone
fi
if [ $del -eq 1 ]; then
for user in `echo $delusers |sed 's@,@ @g'`; do
if id $user &>/dev/null; then
userdel -r $user
[ $debug -eq 1 ] &&echo "delete $user finished."
else
[ $debug -eq 1 ] &&echo "$user not exist."
fidone
fi
linux系統中case命令的用法
1 linux系統中case主要用於選擇執行 在需要進行多重分支的情況下使用,case在多個範圍內匹配資料,若匹配成則執行相關的命令並結束整個條件測試。簡單示例 root linuxprobe test ls test.sh root linuxprobe test cat test.sh 檢視測試...
linux命令練習
重啟linux系統 rboot刪除游標前後的內容 前ctrl u後ctrl k刪除 tmp下所有a開頭的檔案 rm f tmp a 把 etc passwd檔案備份到 tmp檔案下 cp etc passwd tmp passwd檢視系統中最後建立的三個使用者 tail 3 etc passwd統計...
Linux 命令練習
將之前所建立的目錄和檔案全部清理掉 在家目錄下建立 workspace cmd 目錄以及 workspace tmp test 目錄 什麼是家目錄?家目錄是在多使用者作業系統上包含該系統的特定使用者的檔案的檔案系統目錄。家目錄的具體內容 如它的名稱和位置 是由作業系統參與定義的 進入 workspa...