关键词:
1、历史命令
[root@centos7 ~]# history [选项] [历史命令保存文件]
选项:
-c: 清空历史命令
-w: 把缓存中的历史命令写入历史命令保存文件。如果不手工指定历史命令保存文件,则放入默认历史命令保存文件~/.bash_history 中
2、历史命令使用
- 使用上、下箭头调用以前的历史命令
- 使用“!n”重复执行第 n 条历史命令
- 使用“!!”重复执行上一条命令
- 使用“!字串”重复执行最后一条以该字串开头的命令
[root@centos7 ~]# !sys
systemctl restart vsftpd
- 使用“!$”重复上一条命令的最后一个参数
3、命令别名
1)设置别名
[root@centos7 ~]# alias 别名=“命令”
[root@centos7 ~]# alias vi="vim"
为了让这个别名永久生效,可以把别名写入环境变量配置文件“~/.bashrc,~/.bash_profile”,只针对当前用户
2) 查看别名
[root@centos7 ~]# alias # 直接执行,显示已经设置的别名命令
alias cp='cp -i'
alias egrep='egrep --color=auto'
....
3)取消别名
[root@centos7 ~]# unalias vi
4、Bash 常用快捷键
快捷键 作用
ctrl+A 把光标移动到命令行开头
ctrl+E 把光标移动到命令行结尾
ctrl+C 强制终止当前的命令
ctrl+L 清屏,相当于 clear 命令
ctrl+U 删除或剪切光标之前的命令
ctrl+K 删除或剪切光标之后的内容
ctrl+Y 粘贴 ctrl+U 或 ctrl+K 剪切的内容
ctrl+R 在历史命令中搜索,按下 ctrl+R 之后,就会出现搜索界面,只要输入搜索内容,就会从历史命令中搜索。
ctrl+D 退出当前终端
ctrl+Z 暂停,并放入后台
ctrl+S 暂停屏幕输出
ctrl+Q 恢复屏幕输出
5、输入输出重定向
1)标准输入输出
设备 设备文件名 文件描述符 类型
键盘 /dev/stdin 0 标准输入
显示器 /dev/stdout 1 标准输出
显示器 /dev/stderr 2 标准错误输出
2) 输出重定向
标准输出重定向 覆盖:正确命令 > 文件 追加:正确命令 >> 文件
标准错误输出重定向 覆盖:正确命令 2> 文件 追加:正确命令 2>> 文件
正确和错误输出到同一个文件中 覆盖:命令 &> 文件 追加:正确命令 &>> 文件
正确和错误输出到不同文件中 命令 1>>文件1 2>>文件2
6、多命令顺序执行
多命令执行符 格式 作用
; 命令 1 ;命令 2 多个命令顺序执行,命令之间没有任何逻辑联系
&& 命令 1 && 命令 2 当命令 1 正确执行($?=0),则命令 2 才会执行 当命令 1 执行不正确($?≠0),则命令 2 不会执行
|| 命令 1 || 命令 2 当命令 1 执行不正确($?≠0),则命令 2 才会执行 当命令 1 正确执行($?=0),则命令 2 不会执行
示例:
ping 100.100.100.100 -c1 &> /dev/null && echo "100.100.100.100 is ok " || echo "100.100.100.100 is error"
7、管道符
1)、字符串查找命令 grep
grep [选项] "搜索内容" 文件名
选项:
-A 数字: 列出符合条件的行,并列出后续的 n 行
-B 数字: 列出符合条件的行,并列出前面的 n 行
-c: 统计找到的符合条件的字符串的次数
-i: 忽略大小写
-n: 输出行号
-v: 反向查找
--color=auto 搜索出的关键字用颜色显示
示例:
[root@centos7 ~]# grep -c "/bin/bash" /etc/passwd #查找当前系统可以登录的用户数
2)、文件查找命令 find,支持通配符
[root@centos7 ~]# find . -name "*.sh" # 查找当前目录下,以sh结尾的文件
3)、管道符 ,将前一个命令结果交给后一个命令进行处理 |
[root@centos7 script]# find . -name "*.sh" | wc -l #查找当前目录下,以sh结尾的文件,并且统计个数
8、通配符
通配符 作用
? 匹配一个任意字符
* 匹配 0 个或任意多个任意字符,也就是可以匹配任何内容
[] 匹配中括号中任意一个字符。例如:[123]代表一定匹配一个字符,或者是 1,或者是 2,或者是 3。
[-] 匹配中括号中任意一个字符,-代表一个范围。例如:[a-z]代表匹配一 个小写字母。
[^] 逻辑非,表示匹配不是中括号内的一个字符。例如:[^0-9]代表匹配一 个不是数字的字符
9、bash中的其他符号
'' 单引号。在单引号中所有字符当作普通字符串处理,所见所得。
"" 双引号。在双引号中所有字符当作普通字符串处理,所见所得。但是“$”、“`”和“” 是例外。
`` 反引号。反引号括起来的内容是系统命令,在 Bash 中会先执行它。和$() 作用一样,不过推荐使用$(),
() 用于一串命令执行时,()中的命令会在子 Shell 中运行
用于一串命令执行时,中的命令会在当前 Shell 中执行。也可以用于变量变形与替换。
[] 用于变量的判断,一般与for,if等条件语句连用
# 在 Shell 脚本中,#开头的行代表注释。
$ 用于调用变量的值,如需要调用变量 name 的值时,需要用$name 的方式 得到变量的值。
转义符,跟在之后的特殊符号将失去特殊含义,变为普通字符。如$将 输出“$”符号,而不当做是变量引用
示例
1)、单引号与双引号
[root@centos7 script]# name=zs
[root@centos7 script]# echo "$name"
zs
[root@centos7 script]# echo '$name'
$name
2)小括号与大括号的区别
()执行一串命令时,需要重新开一个子 shell 进行执行 ;执行一串命令时,是在当前 shell 执行
()和都是把一串的命令放在括号里面,并且命令之间用;号隔开
()最后一个命令可以不用分号;最后一个命令要用分号;
的第一个命令和左括号之间必须要有一个空格;()里的各命令不必和括号有空格
shell编程shell中bash基本功能(代码片段)
...名查询别名命令执行时顺序让别名永久生效删除别名Bash常用快捷键Bash基本功能-输入输出重定向标准输入输出输出重定向标准输出重定向标准错误输出重定向实例-重定向输入实例-覆盖正确输出和错误输出同时保存黑洞输入重定... 查看详情
markdown[常用的bash命令]常用的bash命令有用的bash命令#bash(代码片段)
markdown常用的bash快捷键(代码片段)
markdown常用的bash命令集(代码片段)
markdown[redis常用命令]#bash#redis(代码片段)
linux常用命令(代码片段)
Linux常用命令1.实验任务一:文件与目录操作1.1pwd命令功能:显示当前所在目录(即工作目录)。[root@lch~]#pwd/root1.2ls命令功能:显示指定目录中的文件或子目录信息。当不指定文件或目录时,显示当前工作目录中的文件或子目录... 查看详情
sh好的bash步骤功能(代码片段)
sh添加bash自动完成功能(代码片段)
docker常用命令(代码片段)
启动容器: dockerrun -it容器名称 bash (i交互方式运行 t指定终端 后面接bash进入bash界面 )守护态启动容器: docker-d 容器名称 关闭容器 dockerstop容器id查看docker容器id dockerps-a(-a查看... 查看详情
git常用操作入门(基于bash命令快速入门)(代码片段)
序言写这篇文章的时候我正好需要用Git作为版本控制,而且将会用到大量的分支以及操作。最恐怖的是,之前都用SourceTree作为Git的图形化界面工具,一直没有好好地用GitBASH。这次基本上都是通过在BASH上面操作(... 查看详情
shell编程shell中bash变量-环境变量(代码片段)
目录系列文章环境变量环境变量是什么设置环境变量系统常用环境变量系列文章【Shell编程】Shell基本概述与脚本执行方式【Shell编程】Shell中Bash基本功能【Shell编程】Bash变量-用户自定义变量【Shell编程】Shell中Bash变量-位置参数... 查看详情
sh从bash中的库中获取实用程序的功能(代码片段)
bash的常用功能呢
一、tab键可以自动补齐命令二、命令历史1、history查看之前敲过的所有命令2、!历史命令编号调用历史的某一个命令三、命令别名1、设置别名 alias别名=‘命令’2、移除别名 unalias别名3、为使用频率较高的复杂命... 查看详情
linux学习总结(70)——bash脚本中常用的内置变量汇总(代码片段)
一、$FUNCNAME、$LINENO、$PWDFUNCNAME表示当前函数的名字,作用范围仅限函数中使用,在函数外无值LINENO表示当前所在脚本中变量出现在的行号PWD表示当前目录,对应于pwd命令debug.sh内容如下#!/bin/bashtesta()echo\'func=\'$FUNCNAME,$LINENOtestaecho\'... 查看详情
docker常用命令(代码片段)
docker常用命令进到某个容器:dockerrun-i-tubuntu/bin/bashdockerrun-i-tlanhong/ubuntu/bin/bash-i:标准输出到当前terminal-t:terminalubuntu:image,从公共仓库pull下来的容器/bin/bash:command查看某个容器IDdockerps-a#看到所有容器,包括未运行,停止运行... 查看详情
sh用于zsh或bash的extract的实用程序功能。(代码片段)
bash基本功能:输入输出重定向(代码片段)
输入输出重定向的作用: 输出重定向就是把命令的执行结果保存到文件,便于查看。 输入重定向就是把原先由键盘的输入改为由文件输入。 先了解一下标准输入输出:[ 设备 ][ 设备文件名 ][文件描述... 查看详情