abs6.6 第11章 循环和分支
来源:互联网 发布:three js 点击 编辑:程序博客网 时间:2024/06/07 00:44
10.1 循环
for arg in [list]/`command`
do
command
//set --$arg #解析变量 并且设置位置参数, 下面的代码可以使用 $1 $2访问arg. -- 防止 arg为空或以-开头的报错
done
// list 可以包含通配符
# 如果list中包括*/? 会进行文件名扩展,file globbing
# 没有in [list] 则循环操作$@,从命令行传递给脚本的参数列表
类似C语言更个
for ((a=1;a <= LIMIT;a++)) # LIMIT前边没有$
10.2 嵌套循环
10.3 循环控制 break,continue
10.4 case and select
case $varibale in
$condition1)
command
;;
$condition2)
comand
;;
*)
default_command
;;
esac
for arg in [list]/`command`
do
command
//set --$arg #解析变量 并且设置位置参数, 下面的代码可以使用 $1 $2访问arg. -- 防止 arg为空或以-开头的报错
done
// list 可以包含通配符
# 如果list中包括*/? 会进行文件名扩展,file globbing
# 没有in [list] 则循环操作$@,从命令行传递给脚本的参数列表
类似C语言更个
for ((a=1;a <= LIMIT;a++)) # LIMIT前边没有$
10.2 嵌套循环
10.3 循环控制 break,continue
10.4 case and select
case $varibale in
$condition1)
command
;;
$condition2)
comand
;;
*)
default_command
;;
esac
#!/bin/bashSUCCESS=0FAILURE=1isalpha(){ if [ -z $1 ] then return $FAILURE fi case "$1" in [a-zA-Z]*) return $SUCEESS;; *) return $FAILURE;;esac}isalpha2(){ [ $# -eq 1 ] || return $FAILURE case $1 in *[!a-zA-Z]*|"") return $FAILURE;; *) return $SUCCESS;; esac}isdigit(){ [ $# -eq 1 ] || return $FAILURE case $1 in *[!0-9]*|"" ) return $FAILURE;; *) return $SUCEESS;;esac}check_var(){ if isalpha "$@" then echo "$* begins with an alpha character." if isalpha2 $@ then echo "$* contains only alpha character." fi elif isdigit $@ then echo "$* contain only digits [0-9]" fi}check_var 23skidoocheck_var 23check_var a2check_var ab 23check_var#echo;#echo "Hit a key, then hit return."#read Keypress##case "$Keypress" in # [[:lower:]] ) echo "Lower letter";;#[[:upper:]] ) echo "Uppercase letter";;# [0-9] ) echo "Digit";;#* ) echo "Punctuation ,whitespace , or other";;#esac#outer=1#for a in 1 2 3 4 5#do# echo "Pass $outer in outer loop."# echo "--------------------"# inner=1## for b in 1 2 3 4 5# do# echo "Pass $inner in inner loop"# let "inner+=1"# done## let "outer+=1"#done#t=0#condition()#{# ((t++))# if [[ $t -lt 5 ]]# then# return 0# else# return 1# fi#}##while condition#do# echo "t=$t"#done##cat $0 | #while read line #do# echo $line#done#LIMIT=10#a=1##while [ "$a" -le $LIMIT ]#do# echo -n "$a"# let "a+=1"#done##((a=1))#while((a<=LIMIT))#do # echo -n $a# ((a+=1))#done#var1=unset#previous=$var1#while echo "previous-variable = $previous"# echo# previous=$var1# [ "$var1" != end ]#do# "input variable #1 (end to exit)"# read var1# echo "variable #1 = $var1"#done#echo #echo#while [ "$var1" != "end" ]#do# echo "Input variable #1 (end to exit) "# read var1# echo "$variable #1 = $var1"# echo #done#var0=0#LIMIT=10##while [[ "$var0" -lt "$LIMIT" ]]#do# echo -n "$var0"## var0=`expr $var0 + 1`#done#LIMIT=10#for((a=1;a<=LIMIT;a++))#do# echo -n $a#done#for((a=1,b=1;a<=LIMIT;a++,b++))#do# echo -n "$a-$b"#done#for a in 1 2 3 4 5 6 7 8 9 10#do# echo -n $a#done#for a in `seq 1 2 10`#do# echo -n $a#done##for a in {1..10}#do# echo -n $a#done#directory=${1-`pwd`}#echo "symbolic links in directory \"$directory\""#for file in "$(find $directory -type l)" #do # echo "$file"#done | sort#OLDIFS=$IFS#IFS=:##for file in $(find $directory -type l -printf "%p$IFS")#do# echo "$file"#done | sort#generate_list()#{# echo "one two three"#}##for word in $(generate_list)#do# echo "$word"#done#PASSWORD_FILE=/etc/passwd#n=1#for name in $(awk 'BEGIN{FS=":"} {print $1}' < $PASSWORD_FILE)#do# echo "USER #$n=$name"# let "n+=1"# #$((n+=1))#done#NUMBERS="9 7 3 8 37.53"###for number in $NUMBERS#for number in `echo $NUMBERS`#do # #echo -n "$number"# echo -n "$number"#done#FILES="/usr/sbin/accept#/usr/sbin/pwck#/usr/sbin/chroot#/sbin/badblocks#/sbin/ypbind"##echo#for file in $FILES#do # if [ ! -e "$file" ]# then# echo "$file dons not exitst.";# echo# continue# fi## ls -l $file | awk '{ print $8" file size:" $5 }'# whatis `basename $file`# echo#done#IFS=$'\n';for line in `cat for_test.txt`;#do# echo "$line"#done#echo#for file in *#do# ls -l "$file"# echo "file:$file"#done##echo;#echo "-----------------------------"##for a#do# echo -n "$a"#done##echo #exit 0##for planet in "Mercyry 36" "Venus 67" "Earth 93" "Mars 142" "Jupiter 483" "-x a"#do# set $planet# #set -- $planet## echo "$1 $2,000,00 miles from the sun"#done
- abs6.6 第11章 循环和分支
- 第7课时.了不起的分支和循环
- 第8课时 了不起的分支和循环 第9课时循环3
- 分支和循环
- 分支,条件和循环
- 循环和分支
- 分支和循环
- Python分支和循环
- 分支和循环2
- 分支和循环(1)
- Java分支流程和循环
- 了不起的分支和循环
- C语言第三节-顺序,分支,循环
- ios学习第一天(四)oc基本结构顺序分支和循环
- 学习Python第三天--简单数据、操作符、分支和循环一些小理解
- 第6章 分支限界法
- 第7章 分支
- 第 7 章 分支
- Uva - 11383 - Golden Tiger Claw(二分图最佳完美匹配)
- VIM
- A*算法
- 动态规划
- abs 第9章 变量重游
- abs6.6 第11章 循环和分支
- 警告:xxxx 是 Sun 的专用 API,可能会在未来版本中删除
- Shell 脚本编程诀窍 第三章 变量
- Shell 脚本编程诀窍 第4章 通配符扩展
- ACE反应器(Reactor)模式
- poj 1094 拓扑排序
- poj 1789 prim 图最小生成树算法
- poj 2253
- poj 1125