8.1 shell介绍
shell是系统跟计算机硬件交互时使用的中间介质,他只是系统的一个工具。在shell和计算机硬件之间还有一层东西——系统内核。用户直接面对的不是计算机硬件而是shell,用户把指令告诉shell,然后shell再传输给系统内核,接着内核再去支配计算机硬件去执行各种操作。
8.2 命令历史
执行过的命令linux都会记录,预设可以记录1000条历史命令。这些命令保存在用户的家目录的bash_history文件中。正确退出当前shell时,在当前shell中运行的命令才会保存至.bash_history文件中。
!是与命令历史有关的一个特殊字符,该字符常用的应用有以下3个。
!!:连续两个!表示执行上一条指令。
!n:这里的n是数字,表示执行命令历史中的第n条指令。例如,!1002表示执行命令历史中的第1002个命令。
history命令如果未改动过环境变量,默认可以把最近执行的1000条命令历史打印出来。
!字符串(字符串大于等于1):例如!pw表示执行命令历史中最近一次以pw开头的命令。
8.3 命令和文件名补全
别名
alias 是bash所特有的功能之一。unalias命令解除别名功能。执行alias命令,会看到目前系统预设的别名。
history命令如果未改动过环境变量,默认可以把最近执行的1000条命令历史打印出来。
!字符串(字符串大于等于1):例如!pw表示执行命令历史中最近一次以pw开头的命令。
8.3 命令和文件名补全
别名
alias 是bash所特有的功能之一。unalias命令解除别名功能。执行alias命令,会看到目前系统预设的别名。
自定义命令的别名,其格式为alias [命令别名]=[具体的命令]。
8.4 通配符
在bash下,可以使用*来匹配零个或多个字符,用?匹配一个字符。
8.5 输入/输出重定向
输入重定向用于改变命令的输入,输出重定向用于改变命令的输出。输出重定向更为常用,它经常用于将命令的结果输入到文件中,而不是屏幕上。输入重定向的命令是<,输出重定向的命令是>。另外,还有错误重定向命令2>以及追加重定向命令>>。