Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。
Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。
Shell 编程跟 JavaScript、php 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。
Linux 的 Shell 种类众多,常见的有:
- Bourne Shell(/usr/bin/sh或/bin/sh)
- Bourne Again Shell(/bin/bash)
- C Shell(/usr/bin/csh)
- K Shell(/usr/bin/ksh)
- Shell for Root(/sbin/sh)
- ……
本教程关注的是 Bash,也就是 Bourne Again Shell,由于易用和免费,Bash 在日常工作中被广泛使用。同时,Bash 也是大多数Linux 系统默认的 Shell。
在一般情况下,人们并不区分 Bourne Shell 和 Bourne Again Shell,所以,像 #!/bin/sh,它同样也可以改为 #!/bin/bash。
#! 告诉系统其后路径所指定的程序即是解释此脚本文件的 Shell 程序。
为什么我们系统上吅法癿 shell 要写入 /etc/shells 这个档案啊? 这是因为系统某些 朋务在运作过程中,会去检查使用者能够使用癿 shells ,而这些 shell 癿查询就是藉由 /etc/shells 这个 档案啰!
bash 主要癿优点有底下 几个:
命令编修能力 (history)
命令不档案补全功能: ([tab] 挄键癿好处)
命令删名讴定功能: (alias) 列:alias lm='ls -al'
工作控刢、前景背景控制
程序化脚本
通配符
透过 type 这个挃令我们可以知道每个挃令是否为 bash 癿内建挃令。
Bash的变量:
mail 会主劢癿叏用 MAIL 这个发量,就能够如上图所示癿叏得自己癿邮件信箱了!(注意大小 写,小写癿 mail 是挃令, 大写癿 MAIL 则是发量名称喔!
获取变量
可以利用 echo 这个指令来取用变量, 但是,变量在被用时,前面必须要加 上钱字号『 $ 』才行
修改变量
变量设定的注意点:
变量的删除与替换
案例:
login 不 non-login
标签:bin,Shell,学习,Bourne,sh,Linux,bash From: https://www.cnblogs.com/maqingsong/p/17009677.html