22 May 2014

1.cat 查看文件内容。

这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用。

格式 : cat [-command] filename

command :

-A, --show-all           等价于 -vET

-b, --number-nonblank    对非空输出行编号

-e                       等价于 -vE

-E, --show-ends          在每行结束处显示 $

-n, --number     对输出的所有行编号,由1开始对所有输出的行数编号

-s, --squeeze-blank  有连续两行以上的空白行,就代换为一行的空白行 

-t                       与 -vT 等价

-T, --show-tabs          将跳格字符显示为 ^I

-u                       (被忽略)

-v, --show-nonprinting   使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外

功能 :

1.一次显示整个文件:cat filename

2.从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件.

3.将几个文件合并为一个文件:cat file1 file2 > file

demo1 : 把file1.log的文件内容加上行号 (包含空行)后输入file2.log这个文件里

cat -n file1.log file2.log 

demo2 : 把 file1.log 和 file1.log 的文件内容加上行号(空行不加)之后将内容附加到 log.log 里

cat -b file1.log file2.log log.log

demo3 : 使用here doc来生成文件

cat >log.txt <<EOF
 > hello 
 > world
 > linux
 > PWD=$(pwd)
 >EOF

cat log.txt
 hello 
 world
 linux
 PWD=/tmp/runtime/


2.more命令文件内容。

more和cat的功能一样都是查看文件里的内容,但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能。

格式: more [-command] file

command :

+n  从笫n行开始显示

-n  定义每屏为多少行

+/pattern   在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示

常用操作命令 :

Ctrl+F  向下滚动一屏

空格键  向下滚动一屏

Ctrl+B  返回上一屏

=       输出当前行的行号

!命令   调用Shell,并执行命令 

q       退出more

demo : 每屏显示3行

more -3 log2014.log

    2014-01
    2014-02
    2014-03
    

3.less 命令也是对文件或其它输出进行分页显示的

使用 [pageup]或[pagedown] 等按键的功能来往前往后翻看文件,也可以对文件进行向上或向下搜索。

格式 :less [-command] filename

command :

-b <缓冲区大小> 设置缓冲区的大小

-e  当文件显示结束后,自动离开

-f  强迫打开特殊文件,例如外围设备代号、目录和二进制文件

-g  只标志最后搜索的关键词

-i  忽略搜索时的大小写

-m  显示类似more命令的百分比

-N  显示每行的行号

-o <文件名> 将less 输出的内容在指定文件中保存起来

-s  显示连续空行为一行

-S  行过长时间将超出部分舍弃

-x <数字> 将“tab”键显示为规定的数字空格

常用操作命令:

/字符串:向下搜索“字符串”的功能

?字符串:向上搜索“字符串”的功能

n:重复前一个搜索(与 / 或 ? 有关)

N:反向重复前一个搜索(与 / 或 ? 有关)

b  向后翻一页

d  向后翻半页

Q  退出less命令

u  向前滚动半页

y  向前滚动一行

空格键 滚动一行

回车键 滚动一页

[pagedown]: 向下翻动一页

[pageup]:   向上翻动一页

其它有用的命令

v - 使用配置的编辑器编辑当前文件

h - 显示 less 的帮助文档

&pattern - 仅显示匹配模式的行,而不是整个文件

demo1 : ps查看进程信息并通过less分页显示

ps -ef | less 

demo2 : history 通过less分页显示

history | less 

4.head 查看文件内容

head命令用来显示开头或结尾某个数量的文字区块。默认显示前10行。

格式 :head [-command] filename

command :

-q 隐藏文件名

-v 显示文件名

-c<字节> 显示字节数

-n<行数> 显示的行数

demo1 : 显示文件的前n行

head -n 5 log2014.log
 2014-01

 2014-02

 2014-03

 2014-04

 2014-05

demo2 : 显示文件前n个字节

head -c 20 log2014.log
 2014-01

 2014-02

 2014

demo3 : 显示文件除了最后n行的全部内容

head -n -10 log2014.log
2014-01

2014-02

2014-03

5.tail 从指定点开始将文件写到标准输出

tail命令的-f选项可以方便的查阅正在改变的日志文件,并且不但刷新,可以查看到最新的日志内容。

格式 : tail [-command] filename

command :

-f 循环读取

-q 不显示处理信息

-v 显示详细的处理信息

-c<数目> 显示的字节数

-n<行数> 显示行数

--pid=PID 与-f合用,表示在进程ID,PID死掉之后结束. 

-q, --quiet, --silent 从不输出给出文件名的首部 

-s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒

demo1 : 显示文件末尾n行内容

tail -n 5 log2014.log 
 2014-09

 2014-10

 2014-11

 2014-12

demo2 : 循环查看文件内容

tail -f log.log

demo3 : 从第5行开始显示文件

tail -n +5 log2014.log

ps: tail 命令的主要用途还是用于时时查看日志文件。