Tải bản đầy đủ (.pdf) (10 trang)

041 case statements kho tài liệu training

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (77.78 KB, 10 trang )

Case Statements

LinuxTrainingAcademy.com


What You Will Learn


Case statements

LinuxTrainingAcademy.com


Case Statements


Alternative to if statements







if [ "$VAR" = "one" ]
elif [ "$VAR" = "two" ]
elif [ "$VAR" = "three" ]
elif [ "$VAR" = "four" ]

May be easier to read than complex if
statements.


LinuxTrainingAcademy.com


case "$VAR" in
pattern_1)
# Commands go here.
;;
pattern_N)
# Commands go here.
;;
esac
LinuxTrainingAcademy.com


case "$1" in
start)
/usr/sbin/sshd
;;
stop)
kill $(cat /var/run/sshd.pid)
;;
esac
LinuxTrainingAcademy.com


case "$1" in
start)
/usr/sbin/sshd
;;
stop)

kill $(cat /var/run/sshd.pid)
;;
*)
echo "Usage: $0 start|stop" ; exit 1
;;
esac

LinuxTrainingAcademy.com


case "$1" in
start|START)
/usr/sbin/sshd
;;
stop|STOP)
kill $(cat /var/run/sshd.pid)
;;
*)
echo "Usage: $0 start|stop" ; exit 1
;;
esac

LinuxTrainingAcademy.com


read -p "Enter y or n: " ANSWER
case "$ANSWER" in
[yY]|[yY][eE][sS])
echo "You answered yes."
;;

[nN]|[nN][oO])
echo "You answered no."
;;
*)
echo "Invalid answer."
;;
esac

LinuxTrainingAcademy.com


read -p "Enter y or n: " ANSWER
case "$ANSWER" in
[yY]*)
echo "You answered yes."
;;
*)
echo "You answered something else."
;;
esac
LinuxTrainingAcademy.com


Summary




Can be used in place of if statements.
Patterns can include wildcards.

Multiple pattern matching using a
pipe.

LinuxTrainingAcademy.com



×