一. Shell概论
shell是什么
shell 作用
1.接收输入命令
2.将命令翻译成0101,传递给内核。由内核调用硬件,进行操作。
Unix中的shell为CShell
linux中的标准shell叫Bash
查看当前计算机shell类型
echo $SHELL
二. 脚本执行方法
echo 命令
echo [选项] [输出内容]
选项:
-e : 支持反斜线控制的字符转换
eg : echo “qwe”
控制字符
用echo命令也是可以识别颜色的
echo -e "\e[1;31m zzzzzz \e[0m"
补充一下 ,想要退出vim 格式
esc -> : -> wq # w保存 q退出
第一个脚本
vi hell.sh
#!/bin/bash
#这是第一个shell脚本
echo "sdsdsd"
脚本执行
赋予 执行权限,直接运行
chmod 755 hello.sh
./hello.sh
或者 通过bahs调用执行脚本
bash hello.sh
Bash的基本功能
命令别名与快捷键
查看与设定别名
alias
#查看系统中所有的命令别名
alias 别名 = '原命令'
#设定命令别名(临时生效)
别名永久生效与删除别名
vi ~/.bashrc
#写入环境变量配置文件
unalias 别名
#删除别名
命令生效顺序
- 第一顺位执行用绝对路径或相对路径的命令。
- 第二顺位执行别名
- 第三顺位执行bash的内部命令
- 第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一命令
. 常用快捷键
ctrl + c 强制终止当前命令
ctrl + l 清屏
ctrl + a 光标移动到命令行首
ctrl + e 光标移动到命令行尾
ctrl + u 从光标所在位置删除到行首
ctrl + z 把命令放入后台
ctrl + r 从历史命令中搜索
历史命令
history [选项]
选项:
-c 清空历史命令
-w 把缓存中的历史命令写入历史命令保存文件~/.bash_history
历史命令的调用
使用上下箭头调用之前的命令
使用"!n"重复执行第n条命令
使用"!!"重复执行上一条命令
使用"!字符串"重复执行最后一条以该字符串开头的命令
历史命令的不全
tab键
三. Bash的基本功能
标准输入输出
输出重定向
单独保存信息用处不大
同时保存正确和错误信息
ls &>/dev/null 丢到回收站
输入重定向
wc [选项] [文件名]
选项:
-l 统计行数
-c 统计字节点
-w 统计单词数
wc 直接 回车 再输入内容 ctrl+d 统计
输入重定向 格式
命令 < 文件名
#统计文件内容,和 命令 文件名 一样
命令 << 标记
# 输入到和标记 一样的停止并统计
管道符
多命令顺序执行
判断命令是否正确
eg: ls && echo yes || echo no
管道符
命令1 | 命令2
#命令1的正确输出作为命令2的操作对象
eg : ls /etc | more
netstat -an
#查看系统中所有网络连接
通配符
通配符
Bash中其他特殊符号
对a赋值 并输出
eg: a = 2
echo $a
将 系统命令 赋给一个变量
eg:
a = `ls`
echo "$a"
#包含ls的是反引号, 即键盘1旁边的那个键
或
a = $(ls)
echo $a