Shell_basic1
78 words
One minute
views
自动执行的一批命令(用户级别)
- 当bash最为注册shell被启动时:自动执行~/.bash_profile
- 当bash作为注册shell退出时:自动执行~/.bash_logout
- 当bash作为交互式shell启动时:自动执行~/.bashrc
脚本文件
1
2
3
4
| bash -x <.sh>: 打印每一行命令
./xx.sh: 在子进程中执行
. xx.sh = source xx.sh: 在当前shell进程中执行
|
历史与别名
历史表
- 先前键入的命令存于历史表 编号递增,FIFO刷新
- 表大小由变量HISTSIZE设定,该配置位于~/.bashrc
- history:查看历史命令
- !! : 引用上一命令
- !str : 以str开头的最近使用的命令
别名和别名替换
输入重定向 stdin 0号文件描述符
- < file: 从file中获取输入
- << STR: 从shell中获取输入,直到再次遇到字符串STR,同时会对特殊变量进行替换,例如`date`,若禁止替换,使用 << ‘STR’
- <<< ABCD: 获得的输入即为’ABCD'
- base64:将输入变为base64编码
输出重定向与管道
- > filename: stdout输出到文件(覆盖)
- >> filename: stdout输出到文件(追加)
- 2> filename: stderr输出到文件
- 2>&1 filename: 将文件句柄2重定向到文件描述符1指向的文件
1
| gcc test.c > test.err > 2>&1
|
- 管道:仅把stdout进行管道, 如果需将stderr管道 2>&1