第三章 Linux shell 概论和注释
本篇文章记录学习 Acwing Linux 工程课的 Shell 语法。大部分参考了 y 总的语法,同样个人也对其进行了补充说明(不是纯纯的搬运)。
1、概论
简要介绍
shell是我们通过命令行与操作系统沟通的语言。和python一样,是解释型语言。
shell脚本可以直接在命令行中执行,也可以将一套逻辑组织成一个文件,方便复用。
AC Terminal中的命令行可以看成是一个“shell脚本在逐行执行”。
Linux中常见的shell脚本有很多种,常见的有:
- Bourne Shell(/usr/bin/sh或/bin/sh)
- Bourne Again Shell(/bin/bash)
- C Shell(/usr/bin/csh)
- K Shell(/usr/bin/ksh)
- zsh
- …
Linux系统中一般默认使用bash,所以接下来讲解bash中的语法。
文件开头需要写#! /bin/bash
中间存在空格,指明bash为脚本解释器。
运行方式
bash脚本的运行方式主要分为三种
前两种:
bash < 脚本名称 # 该种方法无参 bash 脚本名 [参数]
第三种需要脚本权限设置为可执行。该方法最为常见,倘若该脚本文件位于 /bin, /usr/bin 等命令搜索路径的目录下,那么就相当于我们组合出了新的命令!(需要管理员sudo 才可以在 /bin/中写文件)
chomod a+x 脚本名 ./脚本名 [参数]
2、注释
单行注释
每行中 # 之后的内容均是注释。
# 这是一行注释 echo 'Hello World' # 这也是注释
多行注释
其实 linux shell 中没有多行注释。 但是可以通过临时文件定向符拼凑出多行注释的功能。
临时文件定向符,允许把 shell 程序的输入行重新定向到一个命令,形式为:
命令 [参数] << 标记符 输入行 ... 标记符
标记符可以是任何明显识别的符号,如 !!、%等等。标记符之间的若干输出重定向到命令的输入。
:<<abc 第一行注释 第二行注释 第三行注释 abc :<<! 第一行注释 第二行注释 第三行注释 !
借助 :
命令,就可以实现多行注释啦。 (:
命令是空命令)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具