《
Linux 常用命令》中已经介绍了查看当前路径、切换目录、创建/复制/移动/删除文件和目录命令,此外,Linux 中常用的命令还有查找文件、过滤文件和基本的管理命令。
读取文档 - / cat / more / less / head / tail
读取完整内容 - cat, more, less
[lugir@hope ~]$ cat .bash_history
……
[lugir@hope ~]$ more .bash_history
……
[lugir@hope ~]$ less .bash_history
……
说明:
-
cat 命令一次性显示文档中的所有内容,如果文档内容过长,前面的内容则会一闪而过。因此建议使用 cat 命令阅读小文档,或者在连结多个文档时使用。
-
more 命令比 cat 命令好一些,当输出的内容满屏之后就会停止,等待用户翻页。回车键向下滚动一行,空格键向下翻动一页面。more 命令的遗憾是,不能向上翻页。
-
less 命令在满屏后自动停止,并且可以上下箭头和 PageUp/Down 按键进行上下翻页,因此在三者中最推荐大家使用。
读取部分内容 - head, tail
head 与 tail 命令的用法都是在后面直接添加文件名,如 "head .bash_history" 和 "tail .bash_history" 命令分别表示读取 .bash_history 文档的开头十行和最后十行。这两个命令都可以结合选项 -n 并指定要显示的行数,如 "head -n15 .bash_history" 命令表示读取文档的前 15 行。
内容处理 - sort / grep / egrep / wc
排序 - sort
sort 命令用于对内容进行排序,默认时按字母表升序排列。sort 命令有多种排序方式,各选项的用法可使用帮助命令 "sort --help" 进行查询
[lugir@hope ~]$ sort ~/.bash_history
;
bg
cat .bashrc
cat .bash_history | less
cat /etc/passwd
cd
cd
cd
……
搜索 - grep, egrep
grep 和 egrep 命令用于在内容中查找制定的字段,如 grep "lugir" /etc/passwd,意思是在 /etc/passwd 文档中查找 lugir 字段,包含 lugir 字段的那一整行会作为结果返回。egrep 属于 grep 的加强版本,它可以查询 +, ?, -, (, ) 等特殊符号。
[lugir@hope ~]$ grep "lugir" /etc/passwd
lugir:x:500:500:lugir:/home/lugir:/bin/bash
计数器 - wc
wc 命令是 word count 的缩写,默认返回指定内容的行数,单词总数或字节总数,通过应用不同的参数可以只返回某项计数,如 "wc -w /etc/passwd" 则返回 /etc/passwd 文档中的单词总数 (以空格为分隔)
[lugir@hope ~]$ wc /etc/passwd
38 56 1873 /etc/passwd
基本管理命令 - ps / who / w
进程状态 - ps
ps 命令是 process status 的缩写,用于查看系统中的进程状态信息。ps 可用的选项非常多,常用方式为 "ps aux",可以使用 "ps --help" 查询不同选项的作用。
登录用户信息 - who, w
who 和 w 命令通常可直接使用,用于查看当前登录的用户信息。who 命令会显示用户登录的时候,w 命令则计算用户登陆时长,w 命令还会显示当前用户运行的命令。
[lugir@hope ~]$ who
lugir tty1 2010-02-05 09:15 (:0)
lugir pts/0 2010-02-05 09:15 (:0.0)
[lugir@hope ~]$ w
10:30:33 up 1:17, 2 users, load average: 0.04, 0.03, 0.01
|
USER |
TTY |
FROM |
LOGIN@ |
IDLE |
JCPU |
PCPU |
WHAT |
|
lugir |
tty1 |
:0 |
09:15 |
1:17m |
25.34s |
0.23s |
pam: gdm-passwo |
|
lugir |
pts/0 |
:0.0 |
09:15 |
0.00s |
0.23s |
0.03s |
w |
通配符 - ?, *, []
? 表示任意一个字符,* 表示 0 个或任意个字符, [] 表示范围
为了演示各个通配符的作用,我们先创建四个文档 ab, ab1, ab2, ab3,然后依此使用不同的通配符,并查看输出结果,最后再删除 ab, ab1, ab2, ab3
[lugir@hope ~]$ touch ab ab1 ab2 ab3
[lugir@hope ~]$ ls ab*
ab ab1 ab2 ab3
[lugir@hope ~]$ ls ab?
ab1 ab2 ab3
[lugir@hope ~]$ ls ab[12]
ab1 ab2
[lugir@hope ~]$ ls ab[13]
ab1 ab3
[lugir@hope ~]$ ls ab[1-3]
ab1 ab2 ab3
[lugir@hope ~]$ rm ab*