- echo 输出命令
- echo [选项] [输出内容]
- -e:支持反斜线控制的字符转化
- echo [选项] [输出内容]
- echo 写脚本
- 不赋执行权限 用 bash shellshname
- 赋执行权限 需要更改执行权限 chmod 755 shellshname 执行:路径/shellshname
- 设置别名:alias ls=“ls -- color=auto” 即 alias 别名=原名 #临时生效
- 也可查看生效的别名
- 如需永久生效:vi ~/.bashrc #写入环境变量配置文件
- unalias 别名 #删除别名
- history历史命令
- history [选项] [历史命令保存文件]
- -c:清空历史命令
- -w:把缓存中的历史命令写入历史命令保存文件~/.bash_history
- Tab键可以进行命令补全
- history [选项] [历史命令保存文件]
- 输入重定向
- #wc [选项] [文件名]
- -c 统计字节数
- -w 统计单词数
- -l 统计行数
- #wc [选项] [文件名]
- 管道符 #有一定的编程思想
- #命令1|命令2
- 命令1的正确输出作为命令2的操作对象 #ls -l /etc | more #分屏显示
- 命令2一定要能操作命令1的输出
- 例如:统计链接服务器的客户端数:netstat -an | grep ESTABLISHED | wc -l
- #命令1|命令2
- 通配符 #主要用来匹配文件名或者目录
- ?:匹配一个任意字符
- *:匹配0个或任意多个任意字符,也就是可以匹配任何内容
- []:匹配中括号中任意一个字符。例如:[abc]代表一定匹配一个字符,或者是a,或者是b,或者是c。 #一个中括号只能匹配一个字符
- [-]:匹配中括号中任意一个字符,-代表一个范围。例如:[a-z]代表匹配一个小写字母
- [^]:逻辑非,表示匹配不是中括号内的一个字符。例如:[^0-9]代表匹配一个不是数字的字符。
- Bash中其他特殊符号
- ‘’:单引号中所有的特殊符号,如“$”,"‘”(反引号)都没有特殊含义
- “”:双引号。在双引号中特殊符号都没有特殊含义,但是“$”,“'”和“”是例外,拥有“调用变量的值”、“引用命令”和“转义符”的特殊含义
- ``:反引号。反引号括起来的内容是系统命令,在Bash中会先执行它。和$()作用一样,不过推荐使用$(),因为反引号容易看错。
- $():和反引号作用一样,用来引用系统命令
- #在shell脚本中,#开头的行代表注释
- $:用于调用变量的值,如需要调用变量name的值时,需要用$name的方式得到变量的值。
- :转义符,跟在之后的特殊符号将失去特殊符号的含义,变为普通字符。如$将输出“$”符号,而不是当前变量的引用。
常用快捷键
ctrl+c: 强制终止
ctrl+l :清屏
ctrl+u :从光标所在行删除到行首
ctrl+a :光标移动到命令行首
ctrl+e :光标移动到命令行尾
ctrl+z:把命令放入后台
ctrl+r:在历史命令中搜索