1. 什么是shell
shell:命令解释器,根据输入的命令执行相应的操作。
//查看当前系统下有哪些shell
cat /etc/shells
vera@vera-Ubuntu:~$ cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash
//查看当前系统正在使用的shell
echo $SHELL
vera@vera-Ubuntu:~$ echo $SHELL
/bin/bash
//常见的shell
/bin/sh(已经被/bin/bash取代)
/bin/dash
/bin/bash(linux 默认的shell)
/bin/rbash
2.bash
bash shell是大多数linux系统中默认的shell,甚至被移植到了Microsoft Windows上的Cygwin系统中,以实现windows的 POSIX虚拟接口。此外,它也被DJGPP项目移植到了MS-DOS上。其他shell也是大同小异,当你学会一种shell,其他也就能轻松驾驭了。
3.命令和路径补齐
bash shell下敲命令时,tab键可以补齐已经敲了的一部分文件名和目录名。ubuntu默认启用了bash completion ,还可以补全命令参数,makefile目标等。
//启用bash completion
source /etc/bash_completion
//ls wo+tab键自动补全
vera@vera-Ubuntu:~$ ls workspace/
app arr_transpose.c binary.c date_print.c leap_year.c myround.c printf_t.c stack switch_t.c array.c break_t.c dict link person_num.c print_pascal.c sum_max.c test.c A_to_a.c char_t.c double_link multi_table.c print_diamond.c queue
//创建一个work目录
vera@vera-Ubuntu:~$ mkdir work
//ls wo+tab+tab得到wo开头的目录名
vera@vera-Ubuntu:~$ ls work
work/ workspace/
4.历史命令记录
按上下移动光标键(或者Ctrl-p、Ctrl-n)可以 一条一条浏览以前输过的命令。如果你能记住以前输过的某条命令中的某个关键字,可以按Ctrl-r,然后输入关键字,随着你每输入一 个字母,bash会做增量式(increasingly)查找,也可以反复按Ctrl-r或Ctrl-s向前向后查 找。如果找到了,按左右移动光标键或Home键(Ctrl-a)或End键(Ctrl-e)将该命令带回提示 符下进一步修改,或者直接按Enter键原封不动地执行该命令。
5.主键盘快捷键
功能 | 快捷键 | 助记 |
---|---|---|
上 | Ctrl+p | previous |
下 | Ctrl+n | next |
左 | Ctrl+b | backward |
右 | Ctrl+f | forward |
Del | Ctrl+d | delete光标后面的 |
Home | Ctrl+a | the first letter |
End | Ctrl+a | end |
Backspace | Ctrl+e | delete光标前面的 |
注:上述命令均在ubuntu14.04下测试有效。习惯于windows的图形界面,利用ubuntu开启linux之旅是一个不错的选择。