标签:bash 特性
bash shell的特性之命令别名
alias:当前shell中定义的所有别名:
(任何随进程而生的属性,会在进程结束,属性消失)
格式 alias 命令别名 =‘原始命令+[选项}’
unalias 别名 取消定义的别名
(在命令前加\使用命令本身,而不是别名)
bashshell的特性:globbing,文件名通配
通配符:
*:匹配任意长度的任意字符
?:匹配任意单个字符
[]:匹配指定字符范围内的任意单个字符,不区分大小写
[[:upper:]]:大写字母
[[:lower:]]:小写字母
[[:alpha:]]:所有字母
[[:digit:]]:所有数字
[[:alnum:]]:字母+数字
[[:space:]]:空格
[[:punct:]]:标点符号 特殊字符
[^]:匹配指定字符范围外的任意单个字符
注意:使用时候是两个中括号
bash特性之快捷键:
Ctrl+a:跳至命令行首
Ctrl+e:跳至命令行尾
Ctrl+u:删除命令行首至当前光标所在处的内容
Ctrl+k:删除当前光标所在处至命令行尾的内容
Ctrl+l:清屏,相当于clear命令
Ctrl+c:终止或者取消命令
Ctrl+z:将当前命令送至后台(fg调回命令)
bash特性之补全功能:
命令补全:在PATH中搜索补全
shell命令:内部,外部
外部:在系统某路经下有一个可执行程序
PATH,一组以冒号分隔的路径
使用tab补全,
路径补全:在给出的打头路径下补全,如果没有打头路径,则为当前目录
(注: CentOS 7中支持长选项补齐,但是6中暂不支持 )
bash特性之提供编程环境:
支持使用变量
支持程序控制
任何一个需要执行的程序都要有一个解释器
脚本开头备注: #!/bin/bash 被称为shebang
bash的特性之bash中的变量:
变量的类型:
本地变量:只对当前shell进程有效,对其子shell以及其他shell都无效
定义变量:[set]Var_Name="Value"
引用变量:${Var_Name}
撤销变量:unset Var_Name
局部变量:只对某一部分有效
定义变量:local Var_Name="Value"
环境变量:用来定义bash的工作特性,由于保存当前会话的属性信息
对其shell进程及其子shell有效:
export Var_Name=”Value“
Var_Name="Value"
export Var_Name
导出
位置变量:
$1,......$n (用于直接引用传递给脚本的参数)
特殊变量:
$0:脚本名称自身
$?:上一条命令的执行状态
状态用数字表示:0-255
0:表示成功
1-255:失败,1.2.127.255预留
部分特殊表示:
$$
$!
$#
$*
查询环境变量:不带任何参数的set,显示当前系统的所有变量
显示所有环境的变量,export不带任何参数
env,printenv
定义:export Var_Name="var name"
bash的配置文件:持久保存用户配置
profile类:为交互式登录的用户提供配置
/etc/profile 全局
/etc/profile.d/*.sh 全局
~/.bash_profile 个人配置,仅对当前用户有效
功能:
设定环境变量
用来实现运行命令或者脚本
如何读取配置文件
/etc/profile -->/etc/profile.d/*.sh -->~/.bash_profile-->~/.bashrc -->/etc/bashrc
bashrc类:非交互式用户登录提供配置
/etc/bashrc:全局
~/.bashrc:个人配置
功能:
设定本地变量
可以定义命令别名
如何读取配置文件
~/.bashrc -->/etc/bashrc -->/etc/profile.d/*.sh
标签:bash 特性
原文地址:http://195175108.blog.51cto.com/10167819/1829592