目录
- ❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️
- ❤️ 本篇创建记录 2022-11-27 ❤️
- ❤️ 本篇更新记录 2022-11-27 ❤️
- 🎉 欢迎关注 🔎点赞 👍收藏 ⭐️留言 📝
- 🙏 此博客均由博主单独编写,不存在任何商业团队运营,如发现错误,请留言轰炸哦!及时修正!感谢支持!
- 🔥 Arduino ESP8266教程累计帮助过超过1W+同学入门学习硬件网络编程,入选过选修课程,刊登过无线电杂志🔥
文章目录
1. 认识 BASH 这个 Shell
2. Shell 的变量功能
3. 命令别名与历史命令
4. Bash shell 的操作环境
5. 数据流重导向 (Redirection)
6. 管线命令 (pipe)
7. 重点回顾
- 由于核心在内存中是受保护的区块,因此我们必须要透过『 Shell 』将我们输入的命令与 Kernel 沟通,好让 Kernel 可以控制硬件来正确无误的工作
- 学习 shell 的原因主要有:文字接口的 shell 在各大 distribution 都一样;远程管理时文字接口速度较快; shell 是管理 Linux 系统非常重要的一环,因为 Linux 内很多控制都是以 shell 撰写的。
- 系统合法的 shell 均写在
/etc/shells
文件中; - 用户默认登陆取得的 shell 记录于
/etc/passwd 的最后一个字段
; - bash 的功能主要有:命令编修能力;命令与文件补全功能;命令别名配置功能;工作控制、前景背景控制;程序化脚本;通配符
- type 可以用来找到运行命令为何种类型,亦可用于与 which 相同的功能;
- 变量就是以一组文字或符号等,来取代一些配置或者是一串保留的数据
- 变量主要有
环境变量
与自定义变量
,或称为全局变量与局部变量 - 使用 env 与 export 可观察环境变量,其中 export 可以将自定义变量转成环境变量;
set
可以观察目前 bash 环境下的所有变量;- $? 亦为变量,是前一个命令运行完毕后的回传值。在 Linux 回传值为 0 代表运行成功;
- locale 可用于观察语系数据;
- 可用
read
让用户由键盘输入变量的值 - ulimit 可用以限制用户使用系统的资源情况
- bash 的配置文件主要分为
login shell
与non-login shell
。 - login shell 主要读取 /etc/profile 与 ~/.bash_profile, non-login shell 则仅读取 ~/.bashrc
- 通配符主要有: *, ?, [] 等等
- 数据流重导向透过
>, 2>, <
之类的符号将输出的信息转到其他文件或装置去; - 连续命令的下达可透过
; && ||
等符号来处理 - 管线命令的重点是:『管线命令仅会处理 standard output,对于 standard error output 会予以忽略』 『管线命令必须要能够接受来自前一个命令的数据成为 standard input 继续处理才行。』
- 本章介绍的管线命令主要有:cut, grep, sort, wc, uniq, tee, tr, col, join, paste, expand, split, xargs 等。