shell是命令行解释器
shell分为bash csh sh
脚本执行方式
ec
ho 输出命令 转义字符
echo -e "mmmm\n"
echo -e "\e[1;31m jifggfj\e[0m"修改不同的颜色输出
运行脚本执行方法:
1,
chmod 755 hello.sh
./hello.sh(文件名)
2.bash 文件名
bash基本功能:
1.命令别名:
alias #查看系统中所有的命令别名
alias 别名 = ‘原命令’ 设定命令别名
alias vi ='vim'
关机之后就消失了,解决办法是配置环境变量
vi~/.bashrc 写入环境变量配置文件
vi /root/.bashrc 将变量写入文件中
source .bashrc 立即生效
echo $PATH
别名的优先级高
2,.历史命令
history 选项 历史命令保存文件
-c :清空历史命令
-w:把缓存中的历史命令写入历史命令保存文件 ~/.bash_history
历史命令最多保存1000条,如果想要修改这个参数的话,可以打开、环境变量配置文件/etc/profile 找到HISTSIZE 修改参数
使用上下箭头可以调用以前的历史命令
使用“!n”重复执行第n条历史命令
使用“!!”重复执行上一条命令
使用“!字串”重复执行最后一条以该字串开头的命令
命令与文件补全,在bash中,命令与文件补全是非常方便与常用的功能,只要在输入命令或文件时,按“TAB”间就会自动补全。
3.输出重定向
软件安装或者打补丁的时候
本来输出到屏幕上,结果给他输出到文件中,改变方向了。
标准输出重定向
命令>文件 以覆盖的方式,把命令的正确输出输出到指定文件或设备中。
命令>>文件 以追加的方式,把命令的正确输出输出到指定的文件或设备中。
标准错误输出重定向
错误命令2>文件 以覆盖的方式,把错误的命令输出输出到指定文件或设备中。
错误命令2>>文件 以追加的方式,把错误的命令输出输出到指定文件或设备中。
正确和错误输出同时
命令>文件2>&1 以覆盖的方式,把命令的正确输出和错误输出保存到同一指定文件或设备中。
命令>>文件2>&1 以追加的方式,把命令的正确输出和错误输出保存到同一指定文件或设备中。
命令&>文件 以覆盖的方式,把命令的正确输出和错误输出保存到同一指定文件或设备中。
命令&>>文件 以追加的方式,把命令的正确输出和错误输出保存到同一指定文件或设备中。
命令>>文件1 2>>文件2 把正确的输出追加到 文件1中,吧错误的输出追加到文件2中。
输入重定向:
wc [选项] [文件名]
选项:
-c统计字节数
-w统计单词数
-l统计行数
命令<文件把文件作为命令的输入
命令<<标识符
。。。
标识符吧标识符之间内容作为命令的输入
4.多命令顺序执行
: 命令1:命令2 多个命令顺序执行,命令之间没有任何逻辑联系。
&& 命令1&&命令2 逻辑与 当命令1正确执行,则命令2才会执行
当命令1执行不正确,则命令2不会执行。
|| 命令1 || 命令2 逻辑或 当命令1执行不正确,则命令2才会执行
当命令1正确执行,则命令2不会执行
管道符:
命令1 | 命令2 命令1的正确输出作为命令2的操作对象
more 查看
ls -l /etc/ | more
netstat -an | grep ESTABLISHED 查询tcp或者udp
5.shell中特殊符号 通配符
? * [] [-]
[^]逻辑非,表示匹配不是中括号内的一个字符。列如:
[^0-9]代表匹配一个不是数字的字符。
快捷键
ctrl+c 强制终止当前命令
ctrl+l 清屏
ctrl+a 光标移动到命令行首
ctrl+e 光标移动到命令行尾
ctrl+u 从光标所在位置删除到行首
ctrl+z 把命令放入后台
ctrl+r 在历史命令中搜索