1.使用命令clear来清除界面.
2.命令别名设置alias和unalias:
例如: alias lm='ls -l | more'
查看当前的别名设置有哪些: alias
unalias lm 取消这个lm的别名设置
3.历史命令:history
例如: history 查看所有的执行过的历史命令
history 5 查看最新执行的5条历史命令
!66 执行历史命令中第66条命令
!! 执行上一条命令
!al 执行最近一次以al开头的历史命令
4. 命令1;命令2;命令3 顺序执行这些命令
5.要做到前一个命令是否成功执行与后一个命令是否要执行有关,就要使用 && 和 ||
例如: 使用ls查阅目录/tmp/abc是否存在,若存在则用touch创建/tmp/abc/hehe: ls /tmp/abc && touch /tmp/abc/hehe
测试/tmp/abc是否存在,若不存在则予以创建,若存在就不做任何事情: ls /tmp/abc || mkdir /tmp/abc
我不清楚/tmp/abc是否存在,但就是要创建/tmp/abc/hehe文件: ls /tmp/abc || mkdir /tmp/abc && touch /tmp/abc/hehe
如果存在就显示"存在",否则显示:不存在": ls /tmp/vbirding && echo "exist" || echo "not exist"
6.管道命令 | 仅能处理经由前面一个命令传来的正确信息,也就是standard output的信息,对于standard error并没有直接处理能力.这个命令必须能够接收standard input的数据才行,例如less,more,head,tail等都是可以接收standard input的管道命令.而ls,cp,mv等就不是管道命令.对于standard error output会直接忽略.
7. 将last当中有出现root的那一行取出来: last | grep 'root'
只要没有'root'就取出来: last | grep -v 'root'
用last在显示的登录者信息中仅留下大名: last | cut -d ' ' -f 1 注明:-d之后跟分隔符,-f之后跟取出第几段之意
个人帐号都记录在/etc/passwd下,请将帐号进行排序: cat /etc/passwd | sort
统计/etc/man.config中有多少字,行,字符数: cat /etc/man.config | wc
将last的输出存一份到last.list中,并将第一列的用户名显示在屏幕上: last | tee last.list | cut -d " " -f 1
tar -cvf - /home | tar -xvf - 第一个-表示:打包数据传送到stdout中,第二个-表示:取用前一个命令的stdout
8.我们怎么知道某个命令是来自外部命令还是内置在bash中的呢或是alias定的呢?利用type这个命令就可以查看:
type 命令名
9.用env查看目前shell环境下所有环境变量与其内容. 用set查看所有变量(包含环境变量和自定义变量) locale查看支持的语系
10.bash的欢迎信息的修改在/etc/issue,具体看P320有点意思.看p321的例题很清楚.
11.让用户有键盘输入内容,将该内容变成名为atest的变量: read atest 接下来用户自己输入 echo $atest看一下结果
看这里:var[0]="hello"
var[2]="big"
var[3]="dog"
echo "${var[0]},${var[2]},${var[3]}"
对变量的操作在第三部分的: 11.2,请详见P304~.