Linux 常用命令 (二)

  《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*

  


付费阅读