bash
简介:
- bash全称Bourne-Again Shell,是一个作为GNU计划编写的Unix shell,他是一个早期重要的shell,由史蒂夫.伯恩在1978年前后编写,同Version 7 Unix一同发布,而bash在1987年由布莱恩.福克斯创造
- 是许多Linux系统发行版的默认shell
特性:
-命令行展开:
~:表示家目录
{}:创建多级目录并在同及目录创建多个文件时之间可以使用逗号隔开
-
命令别名:
alias:展示所有的别名列表
unalias:清除命令别名 -
命令历史:
history:用于查看进程中使用过的命令历史
-c: 清空命令历史;
-d offset:删除指定命令历史
-r: 从文件读取命令历史至历史列表中;
-w:把历史列表中的命令追加至历史文件中;
history #:显示最近的#条命令;调用命令历史列表中的命令: !#:再一次执行历史列表中的第#条命令; !!:再一次执行上一条命令; !STRING:再一次执行命令历史列表中最近一个以STRING开头的命令; 注意:命令的重复执行有时候需要依赖于幂等性(执行命令后查看结果相同)
-
文件名通配:(指的是整个命令的匹配,而不是部分)
*:匹配任意长度的任意字符
?:匹配任意单个字符
[]:匹配指定范围内的任意单个字符
几种特殊格式:[a-z], [A-Z], [0-9], [a-z0-9]
[[:upper:]]:所有大写字母
[[:lower:]]:所有小写字母
[[:alpha:]]:所有字母
[[:digit:]]:所有数字
[[:alnum:]]:所有的字母和数字
[[:space:]]:所有空白字符
[[:punct:]]:所有标点符号 -
快捷键:常用Linux系统快捷键
-
命令补全,目录路径补全:
在输入有唯一标识关于命令或者目录路径时,点击TAB键直接显示在本目录下的对应的目录及相应的命令
变量 :
- 概念:
在Bash中,变量默认类型都是字符串类型;
*变量名命名规范:*变量名只能包含数字,字母,下划线,而且数字不能开头;
见名知意,命名机制遵循某种法则;
不能够实用程序的关键字,如if,else,then,while等;
bash内嵌了许多环境变量(通常为全大写字符),用于定义bash的工作环境 - 变量赋值:(变量用等号链接,等号左右两侧不能有空格)
username=”“
环境变量变量赋值时,可以先声明变量名,后赋值
环境变量赋值:(1)export name=value
(2)export name name=””;
(3) declare -x name=value
(4) name=value declare -x name
*注意:*变量的值如果有空格,需要使用单引号或者双引号包括 - 变量引用:
变 量 名 或 者 {变量名}或者 变量名或者变量名
例如:
“”:变量名会替换为其值; 软引用,变量名不进行解析,
‘’:变量名不会替换为其值;强引用,变量引用不执行替换; - 变量类型:
*本地变量:*作用域仅为当前shell进程;
*环境变量:*作用域为当前shell进程及其子进程;
*局部变量:*作用域仅为某代码片断(函数上下文);
*位置参数变量:*当执行脚本的shell进程传递的参数;
*特殊变量:*shell内置的有特殊功用的变量;
$?:
0:成功
1-255:失败