Bash Shell
Linux系统的合法shell都写入/etc/shells这个文件,默认使用的shell版本称为“Bourne Again Shell(简称bash)”
用户登录时系统会分配一个shell让用户工作,登陆取得的shell记录在/etc/passwd文件中
......(下面省略)......
bash的优点
- 命令记忆能力
命令记录在~/.bash_history中,记录前一次登陆以前执行过的命令。而本次登陆所执行的命令都被暂存在临时内存中,当成功注销系统后,该命令记忆才会记录到.bash_history中。该文件能直接显示输入的密码。
- 命令与文件补全([Tab]按键)
- 命令别名设置(alias)
- 作业前后台控制
- shell script
命令的执行([Enter])
输入多行命令:“\[Enter]”会转义回车键,下一行会出现>符号,可以继续输入命令。
变量
变量的显示
变量的赋值
等号两边不能直接接空格符,若有空格符可使用双引号、单引号括起来或转义空格符。
双引号内的特殊字符保有原本特性,单引号内的特殊字符仅为纯文本
取消变量的方法为使用“unset 变量名称”。
unset 变量名称
查看环境变量
env
查看所有变量(含环境变量与自定义变量)
set
自定义变量转成环境变量
export 变量名称
子进程仅继承父进程的环境变量,不会继承父进程的自定义变量
常见环境变量
- HOME——用户的主文件夹
- SHELL——默认是/bin/bash
- PATH——文件命令查找路径
- LANG——语系
- PS1——命令提示符,可在 ~/.bashrc 中设置
- $——此 shell 的线程号PID
echo $$
- ?——“上个执行命令”的“回传码”
如果上个命令成功执行,则会回传一个 0 值;如果上个命令发生错误,就会回传一个非 0 的“错误代码”。 - OSTYPE,HOSTTYPE,MACHTYPE——主机操作系统与CPU等级
键盘读取变量
-t 接等待的秒数,超时则自动略过该命令
声明变量类型
declare [-aixr] 变量名称
-a 数组类型
-i 整数类型
-x 变为环境变量
-r 只读类型,无法更改、重设
将 - 变为 + 进行“取消”操作
变量类型默认为“字符串”