Home | 简体中文 | 繁体中文 | 杂文 | 知乎专栏 | Github | OSChina 博客 | 云社区 | 云栖社区 | Facebook | Linkedin | 视频教程 | 打赏(Donations) | About
知乎专栏多维度架构

第 22 章 Bash Shell

目录

22.1. 快捷键
22.2. bash - GNU Bourne-Again SHell
22.2.1. -n 检查脚本是否有语法错误
22.2.2. -x 显示详细运行过程
22.3. Introduction
22.3.1. chsh - change login shell
22.3.2. 切换身份
22.3.3. I/O 重定向
22.3.3.1. stdout
22.3.3.2. error 重定向
22.3.3.3. 使用块记录日志
22.3.3.4. tee - read from standard input and write to standard output and files
22.3.3.4.1. 重定向到文件
22.3.3.4.2. nettee - a network "tee" program
22.3.3.5. 创建文件
22.3.3.6. 快速清空一个文件的内容
22.3.4. pipes (FIFOs)
22.3.5. mktemp - create a temporary file or directory 临时目录与文件
22.3.6. History 命令历史记录
22.3.6.1. .bash_history
22.3.6.1.1. 格式定义
22.3.6.1.2. 设置忽略命令
22.3.6.2. .mysql_history
22.3.7. hash - hash database access method
22.3.8. prompt
22.4. variable
22.4.1. 系统变量
22.4.1.1. 命令行参数传递
22.4.1.2. $n $# $0 $?
22.4.1.3. $? 程序运行返回值
22.4.1.4. shift 移位
22.4.2. 表达式
22.4.3. Internal Environment Variables
22.4.3.1. $RANDOM 随机数
22.4.3.2. 与 history 有关的环境变量
22.4.4. set 设置变量
22.4.5. unset 变量销毁
22.4.6. 设置变量默认值
22.4.7. export 设置全局变量
22.4.8. declare
22.4.9. Numerical 数值运算
22.4.10. Strings 字符串操作
22.4.10.1. ##/#
22.4.10.2. %%/%
22.4.10.3. 字符串截取
22.4.10.4. #
22.4.10.5. example
22.4.10.6. 计算字符串长度
22.4.10.7. 字符串查找替换
22.4.11. Array 数组
22.4.11.1. for 与 array
22.4.11.2. while 与 array
22.4.11.3. array 与 read
22.4.11.4. 拆分字符串并转换为数组
22.4.11.5. 数组转为字符串
22.4.12. read 赋值多个变量
22.4.13. eval
22.4.14. typeset
22.5. conditions if and case
22.5.1. if
22.5.2. case
22.6. Loops for, while and until
22.6.1. for
22.6.2. while
22.6.3. until
22.7. Functions
22.7.1. Local variables
22.8. User interfaces
22.8.1. input
22.9. subshell
22.10. Example
22.10.1. 有趣的Shell
22.10.2. backup
22.10.3. CPU 核心数
22.10.4. Password
22.10.5. processes
22.10.5.1. pid
22.10.5.2. kill
22.10.5.3. pgrep
22.10.6. Shell 技巧
22.10.6.1. 行转列,再批评
22.10.6.2. for vs while
22.10.6.3. 遍历字符串
22.10.7. to convert utf-8 from gb2312 code
22.10.8. 使用内存的百分比
22.10.9. 合并apache被cronlog分割的log文件
22.10.10. Linux 交集 差集 并集

22.1. 快捷键

		
Ctrl+p shell中上一个命令,或者 文本中移动到上一行
Ctrl+n shell中下一个命令,或者 文本中移动到下一行
Ctrl+r 往后搜索历史命令
Ctrl+s 往前搜索历史命令
Ctrl+f 光标前移
Ctrl+b 光标后退
Ctrl+a 到行首
Ctrl+e 到行尾
Ctrl+d 删除一个字符,删除一个字符,相当于通常的Delete键
Ctrl+h 退格删除一个字符,相当于通常的Backspace键
Ctrl+u 删除到行首
Ctrl+k 删除到行尾
Ctrl+l 类似 clear 命令效果
Ctrl+y 粘贴