一.echo命令
echo [选项] 输出内容
选项:
-e 支持转义字符
注意:输出内容中的 叹号!一般不支持输出
其中\b表示退格
echo -e "\e[1;31m 嫁人就要嫁凤姐 \e[0m "
# 输出颜色
# 30m=黑色,31m=红色,32m=绿色,33m=黄色·#34m=蓝色,35m=洋红,36m=青色,37m=白色
二.第一个shell程序
#!/bin/bash # 告诉下面的命令是由/bin/bash执行的
#The first shell program
echo -e "\e[1;31m 嫁人就要嫁凤姐 \e[0m "
shell脚本的执行方式有两种:
- 赋予执行权限,直接运行
- 通过bash调用执行脚本(类似于python的解释器执行的方式)
三.别名与快捷键
- alias命令
功能是:列出当前系统中拥有别名的命令
alias 别名=‘原命令’
#设定命令别名
可见vi是vim的别名,在centos6.10中,rm命令删除文件不会提示是否删除,但rm -i会提示是否删除,为了保证删除时行为可控,可以设置这样的别名:alias rm='rm -i'
但在命令行中设置的别名,计算机重启后,并不会生效,可以在用户的家目录下的.bashrc文件中添加别名,这样设置后能够永久生效
若想是配置文件立即生效,可以使用source .bashrc命令
unalias 别名
# 删除别名
unalias删除的如果是配置文件.bashrc中添加的别名,则重启系统后,该别名还是会存在,要想永久删除某个别名,只能在配置文件.bashrc中删除
四 .llinux系统命令生效的顺序
- 第一顺位执行用绝对路径或相对路径执行的命令。
- 第二顺位执行别名。(别名会覆盖原有的命令)
- 第三顺位执行Bash的内部命令。
- 第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一个命令
五.linux系统中的常用的快捷键
- ctr1+c 强制终止当前命令(常用)
- ctr1+l 清屏(是clear命令的简化版)
- ctrl+a 光标移动到命令行首(常用)
- ctrl+e 光标移动到命令行尾(常用)
- ctrl+u 从光标所在位置删除到行首(常用)
- ctr1+z 把命令放入后台(尽量避免)
- ctr1+r 在历史命令中搜索
六.历史命令history
history[选项][历史命令保存文件]
选项:
-c:清空历史命令
-w:把缓存中的历史命令写入历史命令保存文件~/.bash_history
不建议清楚历史命令,第一,历史命令保存了个人的操作习惯,方便排查错误;第二,历史命令可以查出系统是否别他人入侵
历史用命令的调用
使用上、下箭头调用以前的历史命令 #较常用
使用"!n"重复执行第n条历史命令
使用"!!"重复执行上一条命令
使用以"!+字符串"重复执行最后一条以该字串开头的命令 #较常用
七.重定向
输出重定向:
设备 | 设备文件 | 文件描述符 | 类型 |
键盘 | /dev/stdin | 0 | 标准输入 |
显示器 | /dev/stdout | 1 | 标准输出 |
显示器 | /dev/stderr | 2 | 标准错误输出 |
命令 > 文件 # 以覆盖的方式,把命令的正确输出输出到指定的文件或设备当中。
命令 >> 文件 # 以追加的方式,把命令的正确输出输出到指定的文件或设备当中。
错误命令 2> 文件 # 以覆盖的方式,把命令的错误输出输出到指定的文件或设备当中。
错误命令 2>> 文件 # 以追加的方式,把命令的错误输出输出到指定的文件或设备当中。
命令 > 文件 2>&1 # 以覆盖的方式,把正确输出和错误输出都保存到同一个文件当中
命令 >> 文件 2>&1 # 以追加的方式,把正确输出和错误输出都保存到同一个文件当中
命令 &> 文件 # 以覆盖的方式,把正确输出和错误输出都保存到同一个文件当中
命令 &>> 文件 # 以追加的方式,把正确输出和错误输出都保存到同一个文件当中
命令 >> 文件1 2>> 文件2 # 把正确的输出追加到文件1中,把错误的输出追加到文件2中
一般用后面3条命令
输入重定向:
wc [选项] 文件名 # 统计一个文件的信息,如果不带文件名,则要求用户在黑窗口输入,按Ctrl+d停止输入
选项:
-c 统计字节数
-w 统计单词数
-l 统计行数
命令 < 文件 把文件作为命令的输入
命令 << 标识符 标识符把标识符之间内容作为命令的输入
八.管道符
1.多命令顺序执行
多命令执行符 | 格式 | 作用 |
; | 命令1;命令2 | 多个命令顺序执行,命令之间没有任何逻辑关系 |
&& | 命令1 && 命令2 |
逻辑与 当命令1正确执行,则命令2才会执行 当命令1执行不正确,则命令2不会执行 |
|| | 命令1 || 命令2 |
逻辑或 当命令1执行不正确,则命令2才会执行 当命令1执行正确,则命令2不会执行 |
;执行符号,中间出现错误命令时,后面的命令依然会执行
&&执行符号,前面的命令执行正确,后面的命令才能执行
||执行符号,前面的命令执行出错,后面的才能执行
判断一条命令是否正确执行的方法:
需要判断的命令名 && echo yes || echo no
2.管道符
管道符也是一个多命令执行符号
命令1 | 命令2
命令1的正确结果作为命令2的操作对象