1.su与sudo
a.管理员命令行输入状态为#,普通用户为$;
b.用户之间的切换:
su -user:su是switch user的简写,表示从一个用户切换到另外一个用户,不加参数默认为切换到root用户;
sudo ls:switch user do的简写,表示在不切换用户身份的情况下,执行命令ls;
区别:执行su之后,用户身份发生了切换,sudo则不切换。
2.tail
tail命令是查看文件的内容,默认为将标准输入写到标准输出,一般用来查看正在实时更新的日志,也就是将写入文件的流同时写到console中,即为将标准输入写到标准输出;
tail -f log.log 从log.log文件末尾开始查看;
tail -100f log.log 从倒数第100行开始查看log.log
tail -n +5 log.log 从第5行开始查看
tail -n 5 log.log 从倒数第5行开始查看
tail -5f log.log 等同于tail -n 5 log.log,比较常用
3.touch
touch用来创建文件或者改变文件属性日期
命令参数:
-a a为access的首字母,更新文件访问时间,不改变修改时间
-c (--no-create)不创建不存在的文件
-m m为modify的首字母,只更新文件修改时间,不改变访问时间
-r a.txt b.txt r是reference的首字母,表示使用a.txt的访问时间和修改时间更新b.txt的访问时间和修改时间
4.grep
一般与管道命令一起使用。
管道命令符号"|"被叫做管道的意思是,在“|”之前的命令执行的结果,作为“|”之后命令的输入,“|”做了承上启下的作用,故名管道命令。
例如:
ps -ef | grep java
ps -ef 获取所有的进程之后,将结果交给grep java,grep java过滤出所有的java进程并显示。
grep的另外一个用处是在特定文件中查找特定字符。
参数:
-v 反转的意思,跟其他命令配合使用
-c 打印匹配特定字符的行数
例如:text.txt共20行
grep -c 'test' text.txt 输出:3
grep -cv 'test' text.txt 则输出:17
grep 'test' text.txt 默认打印包含test的行
grep -v 'test' text.txt 打印不包含test的行
-n 打印匹配行及行标
-i 匹配时不区分大小写
5.wc
wc为word count的首字母简写。
参数:
-b 统计文件字节数
-c 统计文件字符数
-l 统计文件行数
-L 统计文件最长的行的长度
-w 统计文件词数
这里的词数,指的是由空白字符(包含换行符、tab符、空格)分割的词数。