news 2026/7/11 11:11:43

7.9号作业

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
7.9号作业

课堂笔记:使用结构化命令(Shell 编程)

  1. if-then 语句
    核心:if 后面跟命令,而非布尔表达式。
    命令退出状态码为 0(成功)→ 执行 then 部分。
    非 0 → 跳过 then,继续后续脚本。
    语法:
    fi
    if-then-else:提供二选一分支。
    bash
    if command; then
    commands1
    else
    commands2
    fi
    嵌套与 elif:避免多层嵌套,使用 elif 链。
    bash
    if command1; then

    elif command2; then

    else

    fi
  2. test 命令与方括号 [ ]
    test 可测试数值、字符串、文件,条件成立返回 0,否则非 0。
    等价写法:if test condition; then … 或 if [ condition ]; then …
    注意:方括号与条件间必须有空格。
    数值比较(仅支持整数):
    操作符 含义
    -eq 等于
    -ne 不等于
    -gt 大于
    -ge 大于等于
    -lt 小于
    -le 小于等于
    浮点数直接用 test 会报错,需用 bc 或双括号。
    字符串比较:
    操作符 含义
    = / != 相等/不等(注意大小写)
    < / > 小于/大于(必须转义,否则被 shell 解释为重定向)
    -n 长度非 0
    -z 长度为 0
    排序顺序:sort 命令以小写优先,而 test 按 ASCII 码(大写 < 小写),注意差异。
    文件比较(常用):
    操作符 含义
    -e 文件/目录存在
    -f 存在且为普通文件
    -d 存在且为目录
    -r/-w/-x 可读/写/执行
    -s 存在且非空
    -O/-G 属于当前用户/组
    -nt/-ot 比另一个新/旧
  3. 复合条件测试
    使用布尔逻辑组合多个测试:
    [ cond1 ] && [ cond2 ](与)
    [ cond1 ] || [ cond2 ](或)
  4. 高级测试:双括号 (( )) 与双方括号 [[ ]]
    双括号 (( )):用于数学运算,支持 ++、**、<<、&& 等,且 > 无需转义。
    bash
    if (( val1 ** 2 > 90 )); then …
    双方括号 [[ ]]:支持字符串模式匹配(如 [[ $USER == r* ]]),且 > 也无需转义。
  5. case 命令
    代替多个 elif,用于匹配单个变量的多个值。
    bash
    case variable in
    pattern1 | pattern2) commands1;;
    pattern3) commands2;;
    ) default commands;;
    esac
    每个分支以 ;; 结束,
    为默认分支。
    练习1


练习二

课堂笔记:更多的结构化命令

  1. for 循环
    基本语法:for var in list; do commands; done
    列表来源:
    直接写入(如 root haolin wang)
    变量(如 $name_list)
    命令输出(如( c a t f i l e ) )通配符(如 ∗ 遍历当前目录)处理复杂值:空格或特殊字符可用引号或转义。字段分隔符:通过修改 I F S 环境变量(如 I F S = (cat file)) 通配符(如 * 遍历当前目录) 处理复杂值:空格或特殊字符可用引号或转义。 字段分隔符:通过修改 IFS 环境变量(如 IFS=(catfile))通配符(如遍历当前目录)处理复杂值:空格或特殊字符可用引号或转义。字段分隔符:通过修改IFS环境变量(如IFS=‘\n’)控制如何分割列表。
  2. C 语言风格的 for
    语法:for (( 变量赋值; 条件; 迭代运算 )); do commands; done
    支持多个变量(如 a=1,b=10; a<=10; a++,b–)。
  3. while 循环
    语法:while test-command; do commands; done
    测试命令返回 0 时继续执行,非 0 时退出。
    测试命令可以是任意命令或 [ ] 条件。
  4. until 循环
    语法:until test-command; do commands; done
    与 while 相反:测试命令返回非 0 时继续,返回 0 时退出。
  5. 嵌套循环
    循环内可包含任意循环,执行次数为乘积关系。
  6. 控制循环
    break:跳出当前循环(可加数字跳出多层,如 break 2)。
    continue:跳过本次迭代剩余命令,进入下一次迭代。
  7. 重定向循环输出
    在 done 后使用 >、>> 或 | 重定向整个循环的输出。
    练习一

    练习二

    练习三
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/11 11:10:56

站群泛程序零根底建立:RAP 方法无需代码

在互联网发展日新月异的今天&#xff0c;站群泛程序建立成为了许多人关注的焦点。而对于零基础的新手来说&#xff0c;RAP 方法无疑是一个福音&#xff0c;因为它让你不用写一行代码就能完成站群泛程序的建立。RAP 方法&#xff0c;即快速应用开发方法&#xff0c;它极大地简化…

作者头像 李华
网站建设 2026/7/11 11:04:16

MateCloud容量规划:微服务资源需求评估的完整指南

MateCloud容量规划&#xff1a;微服务资源需求评估的完整指南 【免费下载链接】matecloud &#x1f525;MateCloud是一款基于Spring Cloud Alibaba的微服务架构。目前已经整合Spring Boot 4.0.7、 SpringCloud 2025、Spring Cloud Alibaba 2025、Spring Security Oauth2、Feign…

作者头像 李华
网站建设 2026/7/11 11:03:04

探索Windows Terminal字体美学:打造高效开发环境的终极指南

探索Windows Terminal字体美学&#xff1a;打造高效开发环境的终极指南 【免费下载链接】terminal The new Windows Terminal and the original Windows console host, all in the same place! 项目地址: https://gitcode.com/GitHub_Trending/term/terminal 在数字时代…

作者头像 李华
网站建设 2026/7/11 11:02:55

GitHubDesktop2Chinese:终极GitHub Desktop中文汉化解决方案

GitHubDesktop2Chinese&#xff1a;终极GitHub Desktop中文汉化解决方案 【免费下载链接】GitHubDesktop2Chinese GithubDesktop语言本地化(汉化)工具 【GitHub桌面客户端中文汉化】 项目地址: https://gitcode.com/gh_mirrors/gi/GitHubDesktop2Chinese 还在为GitHub D…

作者头像 李华
网站建设 2026/7/11 11:02:13

Appainter:Flutter Material主题编辑器的终极指南

Appainter&#xff1a;Flutter Material主题编辑器的终极指南 【免费下载链接】appainter A material theme editor and generator for Flutter to configure and preview the overall visual theme of your material app. 项目地址: https://gitcode.com/gh_mirrors/ap/appa…

作者头像 李华
网站建设 2026/7/11 11:02:06

Sense健身追踪功能深度解析:实时卡路里估算与重复计数技术

Sense健身追踪功能深度解析&#xff1a;实时卡路里估算与重复计数技术 【免费下载链接】sense Enhance your application with the ability to see and interact with humans using any RGB camera. 项目地址: https://gitcode.com/gh_mirrors/se/sense 想要通过摄像头就…

作者头像 李华