您的位置:首页 > 运维架构 > Shell

bash常用命令与技巧

2018-06-03 18:02 253 查看
一、bash介绍:
bash是一个为GNU计划编写的Unix shell,它的名字是一系列缩写:Bourne-Again SHell。 Bash是许多Linux发行版默认的Shell。还有许多其他传统UNIX上用的Shell,如:tcsh、csh、ash、bsh、ksh等。

二、bash特性:
1、bash:
(1)、命令历、命令补全
(2)、管道、重定向
(3)、命令别名

(4)、命令行编辑
(5)、命令行展开
(6)、文件名通配
(7)、支持使用变量
(8)、支持编程(脚本)

2、命令行编辑:
光标跳转:

(1)、Ctrl+a:跳到命令行首
(2)、Ctrl+e:跳到命令行尾
(3)、Ctrl+u:删除光标至命令行首得内容
(4)、Ctrl+k:删除光标至命令行尾得内容
(5)、Ctrl+l:清屏

3、命令历史
查看命令历史:history
(1)、-c:清空命令历史
(2)、-d OFFSET
:删除指定位置得命令
(3)、-w:保存命令历史至历史文件中

4、环境变量
PATH:命令搜索路径
HISTSIZE:命令历史缓冲区大小

5、命令历史的使用技巧
(1)、!n:执行命令历史中的第n条命令
(2)、!-n:执行命令历史中的倒数第n条命令;
(3)、!!:执行上一条命令;
(4)、!string:执行命令历史中最近一个指定字符串开头的命令
(5)、!$(另外一种方法:先按esc,松开后再按.):引用前一条命令的最后一个参数
(6)、Esc ,.:引用前一条命令的最后一个参数

6、命令补全:tab键
搜索PATH环境变量中指定的每个路径下以我们给出的字符串开头的可执行文件,如果多余一个,两次tab,可以给出列表;否则将直接补全。

PATH:
路径补全:tab键
搜索我们给出的起始路径下的每个文件名,并试图补全。

7、命令别名:
alias CMDALIAS=‘COMMAND’[options] [arguments]
在shell中定义的别名尽在当前shell生命周期中有效;别名的有效范围仅为当前shell进程。

ualias CMDALIAS :撤销命令

8、命令替换:$(COMMAND),反引号:`COMMAND`
把命令中某个子命令替换为其执行结果的过程。

例子:把当前时间写入文件名中,



9、bash支持的引号:
(1)、``:命令替换

(2)、“”:弱引用,可以实现变量替换

(3)、‘’:强引用,不完成变量替换

10、文件名通配:globbis (* ? [])
(1)、 *:任意长度的任意字符

(2)、 ?:匹配任意单个字符

(3)、 []: 匹配指定范围内的任意单个字符 [abc] [a-m] [a-z] [A-Z] [0-9] [a-zA-Z]

[:space:] :表示空白字符的集合

[:punct:]:表示标点符合

[:lower:]:表示小写字母

[:upper:]:表示大写字母

[:alpha:]:表示大小写字母
[:digit:]:表示数字
[:alnum:] :表示数字和大小写字母

(4)、 [^]:匹配指定范围外的任意单个字符
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Bash 特性 简单介绍