bash基础特性
globbing:文件名通配
匹配模式:元字符
*:匹配任意长度的任意字符
pa*,*pa*,*pa
?:匹配任意单个字符
pa?
[ ]: 匹配指定范围内的任意单个字符
有几种特殊格式:
[a-z],[A-Z],[0-9]
pa[0-9],2[0-9][0-9]
[[:upper:]] :所有大写字母
[[:lower:]]:所有小写字母
[[:alpha:]]:所有字母
[[:digit:]]:所有数字
[^]:匹配指定范围外的任意单个字符
[^[:upper:]]
[^0-9]
[^[:alnum:]]
IO重定向及管道
程序:指令+数据
程序的数据流有三种:
输入的数据流:<– 标准输入(stdin)键盘
输出的数据流:–> 标准输出(stdout)显示器
错误输出流: 错误输出(stderr)显示器
fd:file descriptor 文件描述符
标准输入:0
标准输出:1
错误输出:2
IO重定向:
输出重定向:>
特性:覆盖输出
输出重定向:>>
特性:追加输出
# set -C
禁止覆盖输出重定向至已存在的文件
此时可使用强制覆盖输出:>|
#set +C
关闭上述特性
错误输出重定向:2>,2>>
合并正常输出流和错误输出流:&>,&>>
command > /path/to/somefile >2&1
here document :<< 输入内容创建到文档
管道:
连接程序,实现将前一个命令的输出直接定向后一个程序当做输入
command1 | command2 | command3
#tee 保存到文件并输出
command | tee /path/to/somefile