grep命令
文本查找命令, 能够使用正则表达式的方式搜索文本,其搜索对象可以是单个或则多个文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| 基本格式 grep [option] [regex] [path]
-o 只按行显示匹配的字符 -c 只输出匹配行的数目 -n 显示匹配行的行号 -v 显示不包含匹配文本的行 -i 不区分大小写 (grep是大小写敏感的) -R 文件夹下递归搜索 -l 只显示匹配的文件名 -H 显示文件名 -A NUM(after)显示匹配的后几行 -B NUM(before)显示匹配的前几行 -C NUM显示匹配的前后几行 –color 标出颜色
|
ls命令
ls是命令行中用的最多的命令之一了,用于显示目录下的文件
1 2 3 4 5 6 7 8 9 10 11
| 基本格式 ls [option]
-a 列出所有文件,包括’.’开头的隐藏文件 -h 使打印结果易于使用者查看(human readable) -l 列出文件的详细信息:创建者,创建时间,读写权限等 -s 显示文件大小 -t 按时间进行文件的排序 -S 以大小进行排序 -r 当前条件逆序 -L 显示文件链接名 -R 将目录中所有文件都递归显示出来
|
find命令
文件查找命令,find命令将递归的搜索目录下符合要求的所有文件
1 2 3 4 5 6 7 8 9 10
| 基本格式 find [path] [option] [expression]
-name 查找名为filename的文件 -perm 查找符合执行权限 -user 按照文件的所属主查找 -mtime -n +n 按照文件的更改时间查找文件,n代表天数 -ctime -n +n 按照创建时间查找 -newer f1 !f2 查更改时间在f1和f2之间的文件 -size n 查找长度为n块的文件,一块为512 bytes -depth 使得查找在进入子目录前先行查找完本目录 -prune 查找时忽略某个目录 -type 按文件类型查找,b为块设备,d为目录,f为普通文档
|
wc命令
用于统计输入中的字节数,字数,行数并输出
1 2 3 4 5 6
| 基本格式 wc [option] [filename]
-c 统计字节数 -l 统计行数 -m 统计字符数 -w 统计字数,一个字为由空白,跳格或换行字符分隔的字符串
|
cat命令
连结命令(Concatenation),连结多个文本,或者以标准输出形式打印文件的内容
1 2 3 4
| 基本格式 cat [option] [filename]
-n 队输出的所有行编号 -b 与-n类似,但空行不编号
|
tail命令
文本查看命令,可以看文本的最后几行。tail命令的优点在于其内容能够与输入同步更新,非常适用于查看实时日志。
1 2 3 4 5 6 7
| 基本格式 tail [option] [filename]
-n number 定位参数,+5表示从第五行开始显示,10或-10表示显示最后10行
-f 监控文本变化,更新内容
-k number 从number所指的KB处开始读取
|
head命令
该命令与tail命令类似,默认显示文件前两行的内容
1 2 3 4 5
| 基本格式 head [option] [filename]
-n number 显示前几行,-5表示文件中除了最后5行之外的所有内容
-c number 显示前几个字节
|
du命令
该命令用于查看系统中文件和目录所占用的空间
1 2 3 4 5 6 7
| 基本格式 du [option] [name]
-h 用human readable的方式显示
--max-depth=number 最大的查询层次
-a 显示所有文件的大小,默认只显示目录的大小
|
which和whereis
which命令的作用是在PATH变量制定的路径中,查找系统命令的位置。
whereis命令用于程序名的搜索,且只能搜索{二进制文件,man说明文件,源代码文件}。whereis的查询时通过查询系统的数据库文件记录,所以速度比find更快,但由于数据库的更新频率较为缓慢,其结果与实际状况并不一定一致。
sort命令
sort命令用于对文本进行排序,并将结果输出。其以文本的每一行为单位,从首字符向后,依次按照ascii码值进行比较,最后升序排列。(默认是忽略每行前面空格的)
1 2 3 4 5 6 7 8 9
| 基本格式 sort [option] [filename]
-u 忽略重复行
-n 按照数字大小排序
-r 逆序
-k start,endstart为比较的起始位置,end为结束位置
|
netstat命令
netstat用于输出linux系统的网络情况信息,以前面试的时候还被问过:“如何查看占用某个端口的程序的pid?”,这个问题实际用netstat -anp输出,然后再grep一下即可。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| 基本格式 netstat [option]
-a 显示所有socket连接
-l 显示监控中(listening)的socket连接
-n 直接使用ip地址,而不使用域名服务器
-p 显示正在使用socket的程序的pid和名称
-r 打印路由表
-t 显示TCP传输协议的连线状况
-u 显示UDP传输协议的连线状况
-s 显示网络工作信息统计表
|
more命令
more命令用于显示文件的内容,与cat和tail等命令不同的是,more命令是按页显示文件内容,同时具有搜寻字符串的功能。(由于more具有向前翻页功能,因此该命令会加载整个文件)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| 基本格式 more [option] [filename]
+n 从第n行开始显示
-n 定义屏幕大小为n行
+/pattern 再显示前按pattern匹配子串并显示
-s 把连续的多个空行显示为一行
常用操作命令:
Enter 向下n行,默认为1行
Ctrl+F 跳过一屏
Ctrl+B 返回上一屏
空格键 向下滚动一屏
= 输出当前行的行号
在more模式中回车,输入/pattern可以持续向下搜索
|
less命令
less命令与more命令对应,既可以前后翻看文件,同时还有前后搜索功能,除此之外,less在查看前不会加载整个文件。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| 基本格式 less [option] [filename]
-N 显示每行的行号
-i 忽略搜索时的大小写
-s 将连续空行显示为一行
-m 显示百分比
常用操作命令:
/字符串 向下搜索“字符串”功能
?字符串 向上搜索“字符串”功能
n 重复前一个搜索
空格键 滚动一页
d 滚动半页
b 回溯一页
y 回溯一行
q 退出less命令
|
ps命令
ps命令用来在Linux系统中显示进程的状态快照,其参数选项可谓非常之多。
1 2 3 4 5 6 7 8 9 10 11 12 13
| 基本格式 ps [option]
-a 显示所有用户的进程
-x 显示没有控制终端的进程
-u 按照用户名称查询进程
-f 列出全部信息,常和其它选项联用
-j 用任务格式来显示进程
-e 显示所有进程
|
kill命令
kill命令用于终止指定的进程,其工作原理是通过向进程发送指定的信号。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| 基本格式 kill [params] [pid]
常用的是:
kill -9 pid //强制终止
-1 Hup 终端断线
-2 INT 中断(同Ctrl+c)
-3 QUIT 退出(同Ctrl+\)
-15 TERM 终止,是默认的信号,如果应用本身会捕获该信号,则不能终止
-9 KILL 强制终止
-18 CONT 继续
-19 STOP 暂停(同Ctrl+z)
|