Home | 简体中文 | 繁体中文 | 杂文 | 打赏(Donations) | 云栖社区 | OSChina 博客 | Facebook | Linkedin | 知乎专栏 | Github | Search | About

第 1 章 Bash Shell

目录

1.1. 快捷键
1.2. bash - GNU Bourne-Again SHell
1.2.1. -n 检查脚本是否有语法错误
1.2.2. -x 显示详细运行过程
1.3. Introduction
1.3.1. chsh - change login shell
1.3.2. 切换身份
1.3.3. test 命令
1.3.4. I/O 重定向
1.3.4.1. stdout
1.3.4.2. error 重定向
1.3.4.3. 使用块记录日志
1.3.4.4. tee - read from standard input and write to standard output and files
1.3.4.4.1. 重定向到文件
1.3.4.4.2. nettee - a network "tee" program
1.3.4.5. 创建文件
1.3.4.6. 快速清空一个文件的内容
1.3.5. pipes (FIFOs)
1.3.6. mktemp - create a temporary file or directory 临时目录与文件
1.3.7. History 命令历史记录
1.3.7.1. .bash_history
1.3.7.1.1. 格式定义
1.3.7.1.2. 设置忽略命令
1.3.7.2. .mysql_history
1.3.8. hash - hash database access method
1.3.9. prompt
1.4. variable
1.4.1. 系统变量
1.4.1.1. 命令行参数传递
1.4.1.2. $n $# $0 $?
1.4.1.3. $? 程序运行返回值
1.4.1.4. shift 移位
1.4.2. 表达式
1.4.3. Internal Environment Variables
1.4.4. set 设置变量
1.4.5. unset 变量销毁
1.4.6. 设置变量默认值
1.4.7. export 设置全局变量
1.4.8. declare
1.4.9. Numerical 数值运算
1.4.10. Strings 字符串操作
1.4.10.1. ##/#
1.4.10.2. %%/%
1.4.10.3. :n1:n2
1.4.10.4. #
1.4.10.5. example
1.4.10.6. 计算字符串长度
1.4.10.7. 字符串查找替换
1.4.11. Array 数组
1.4.11.1. for 与 array
1.4.11.2. while 与 array
1.4.11.3. array 与 read
1.4.11.4. 拆分字符串并转换为数组
1.4.11.5. 数组转为字符串
1.4.12. read 赋值多个变量
1.4.13. eval
1.4.14. typeset
1.5. conditions if and case
1.5.1. if
1.5.2. case
1.6. Loops for, while and until
1.6.1. for
1.6.2. while
1.6.3. until
1.7. Functions
1.7.1. Local variables
1.8. User interfaces
1.8.1. input
1.9. subshell
1.10. Example
1.10.1. 有趣的Shell
1.10.2. backup
1.10.3. CPU 核心数
1.10.4. Password
1.10.5. processes
1.10.5.1. pid
1.10.5.2. kill
1.10.5.3. pgrep
1.10.6. Shell 技巧
1.10.6.1. 行转列,再批评
1.10.6.2. for vs while
1.10.6.3. 遍历字符串
1.10.7. to convert utf-8 from gb2312 code
1.10.8. 使用内存的百分比
1.10.9. 合并apache被cronlog分割的log文件
1.10.10. Linux 交集 差集 并集

1.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 粘贴