网站建设实训报告范文,seo技术蜘蛛屯,榆林网站建设推广,网站快照不更新原因快捷查看指令 ctrlf 进行搜索会直接定位到需要的知识点和命令讲解#xff08;如有不正确的地方欢迎各位小伙伴在评论区提意见#xff0c;博主会及时修改#xff09; 
shell中的case语句 在shell脚本中#xff0c;case语句用于匹配一个变量的值。它类似于if语句#xff0c;…快捷查看指令 ctrlf 进行搜索会直接定位到需要的知识点和命令讲解如有不正确的地方欢迎各位小伙伴在评论区提意见博主会及时修改 
shell中的case语句 在shell脚本中case语句用于匹配一个变量的值。它类似于if语句但是更适合于多个条件的匹配。case语句使用语法结构如下 case variable in
value1)# execute commands;;
value2)# execute commands;;
value3)# execute commands;;
*)# default case (if no value matches);;
esaccase关键字开头后跟要匹配的变量名。in关键字之后是要匹配的值列表这些值用圆括号包围每个值末尾都要加上双引号。每个值后面都跟着一对圆括号其中包含要执行的命令列表。每个命令列表都要用两个分号分隔。最后一个分号表示一个空命令表示这个case语句的结束。如果没有任何值匹配最后的“ *”表示默认情况。 
下面是一个使用case语句的案例 
#!/bin/bash
echo 请输入一个数字
read num
case $num in 1)echo 你输入的是1;;2|3|4)echo 你输入的是2、3或4;;[5-9])echo 你输入的是5至9之间的数字;;*)echo 你输入的不是数字;;
esac 在这个脚本中我们要求用户输入一个数字根据不同的数字做出不同的响应。例如如果用户输入的是1就输出“你输入的是1”如果用户输入的是2、3或4就输出“你输入的是2、3或4”如果用户输入的是5至9之间的数字就输出“你输入的是5至9之间的数字”如果用户输入的不是数字就输出“你输入的不是数字”。 注意在模式2中我们使用了|分隔符表示可以匹配多个模式在模式3中我们使用了[]表示匹配一个范围内的字符。 下面是一个例子使用case语句匹配一个变量的值 #!/bin/bash# Get user input
echo Enter a number from 1 to 3:
read num# Match the number
case $num in1)echo You entered 1.;;2)echo You entered 2.;;3)echo You entered 3.;;*)echo Invalid number.;;
esac在上面的例子中用户输入一个数字然后case语句根据数字匹配并执行相应的命令。如果用户输入的数字不在1-3之间则执行默认命令。 另一个例子是根据文件扩展名进行操作 
#!/bin/bash# Get file extension
read -p Enter file name:  file# Match the file extension
case $file in*.txt)echo File is a text file.;;*.pdf)echo File is a PDF file.;;*.jpg|*.jpeg|*.png)echo File is an image file.;;*)echo File type is not supported.
esac在这个例子中读取文件名并使用case语句判断文件类型。如果文件扩展名是.txt则执行相应的命令如果是.pdf则执行另一个命令以此类推。注意最后一个分支匹配多个扩展名用“ |”分隔。如果文件扩展名不在列表中则执行默认命令。