注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

wangyufeng的博客

祝愿BB 健康开心快乐每一天

 
 
 

日志

 
 

linux 查看文件命令实例  

2011-12-15 09:39:51|  分类: Linux学习 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

1.cat(显示文本文件)

(1)功能说明
显示文本文件或把几个文件内容附加到另一个文件中

(2)语法
cat [选项] [文件名]

(3)选项说明

-n: 由1开始对所有输出的行数编号
-b: 空白行不编号
-s: 当遇到有连续两行以上的空白行时,就替换为一行的空白行

(4)例:显示/etc/shells文件内容

#cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/ash
/bin/bsh
/bin/ksh
/usr/bin/ksh
/usr/bin/pdksh
/bin/tcsh
/bin/csh
/bin/zsh
//可以看到/etc/shells文件的内容是shell类型

(5)例:把textfile1的文件内容加上行号后输入textfile2文件

#cat -n textfile1 > textfile2

(6)例:把textfile1和textfile2的文件内容加上行号(空白行不加)之后将内容附加到textfile3

#cat -b textfile1 textfile2 >> textfile3

2.more(分页显示文本文件)

(1)功能说明
分页显示文本文件

(2)语法
more [-dlfpcsu] [-num] [+/pattern] [+linenum] [文件名]

说明:类似于cat,不过以分页显示方便使用者逐页阅读,按空格键(space)就显示下一页,按“b”键返回(back)显示上一页。

(3)选项说明

-num: 一次显示的行数
-l: 取消遇见特殊字符^L(送纸字元)时会暂停的功能
-f: 按实际上的行数而非自动换行过后的行数(有些字数太长的单行会被扩展为两行或两行以上)计算行数
-p: 不以卷动的方式显示每一页,而是先清除屏幕后再显示内容
-c: 跟“-p”相似,不同的是先显示内容再清除其他旧资料
-s: 当遇到有连续两行以上的空白行时,就替换为一行的空白行
-u: 不显示下引号(根据环境变数TERM指定的terminal而有所不同)
+num: 从第num行开始显示

(4)例:分页显示文件/root/log.txt的内容

#more /root/log.txt

(5)例:逐页显示testfile文件的内容,如果有连续两行以上的空白行则以一行空白行显示

#more -s testfile

(6)例:从第20行开始显示testfile文件的内容

#more +20 testfiles

(7)例:一次显示/etc/passwd文件的两行

#more -2 /etc/passwdd
root:x:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
--MORE--(2%)

3.less(回卷显示文本文件)

(1)功能说明
回卷显示文本文件

(2)语法
less [选项] [文件名]

说明:less的作用与more十分相似,都可以用来浏览文本文件的内容,不同的是less允许使用者往回卷动。

(3)例:显示/root/log.txt的内容

#less /root/log.txt

4.head(显示指定文件前若干行)

(1)功能说明
显示指定文件前若干行

(2)语法
head [- n] [文件]

说明:该命令显示每个指定文件的前面n行。如果没有给出n值,缺省设置为10。如果没有指定文件,head就从标准输入中读取。

(3)选项说明

-n: 显示文件开头的行数,默认是输出前面10行
-q: 表明不显示文件名的首部
-v: 表明显示文件名的首部

(4)例:/mnt/ittongluren目录下有一个文件“study.txt”,查看该文件前3行的内容

#head -3 /mnt/ittongluren/study.txt
大家好!
我是xxx
欢迎大家学习Linux课程。

5.tail(查看文件末尾数据)

(1)功能说明
查看文件末尾数据

(2)语法
tail [+/-n] [选项] [文件名]

(3)选项说明

+n: 从第n行后开始显示
-n: 从距文件尾n行处开始显示,如果省略参数n,系统默认值为10
l: 以文本行为num的计数单位。与参数选项+num或-num选项同时使用时,num表示要显示的文本行行数
c: 以字节为num的计数单位。与参数选项+num或-num选项同时使用时,num表示要显示的字符数

(4)例:查看文件/mnt/ittongluren/study.txt末尾3行数据

#tail -3 /mnt/ittongluren/study.txt
hello!
Linux
......

6.sort(对文件中的数据进行排序)

(1)功能说明
对文件中的数据进行排序,并将结果显示在标准输出上。

(2)语法
sort [选项] [文件]

(3)选项说明

<1>改变缺省设置的选项
-m: 若给定文件已排好序,合并文件
-c: 检查给定文件是否已排好序,如果它们没有都排好序,则打印一个出错信息,并以状态值1退出
-u: 排序后相同的行只保留其中一行
-: 输出文件,将排序输出写到输出文件中而不是标准输出,如果输出文件是输入文件之一,sort先将该文件的内容写入一个临时文件,然后再排序和写输出结果

<2>改变缺省排序规则的选项
-d: 按字典顺序排序,比较时只有字母、数字、空格和制表符有意义
-f: 将小写字母与大写字母同等对待
-I: 忽略非打印字符
-M: 按月比较,如“JAN”<“FEB”
-r: 按逆序输出排序结果

(4)例:读取文件file1,显示在屏幕上

#sort file1
a
aa

(5)例:读取文件file1,以倒序排序该文件并显示在屏幕上

#sort -r file1
aa
a

(6)例:在名为linux.txt的文件中搜索文本“Jones”,并排序搜索结果

#find "Jones" linux.txt |sort

7.unip(将重复行从输出文件中删除)

(1)功能说明
文件经过处理后在它的输出文件中可能会出现重复的行,使用该命令可以将这些重复行从输出文件中删除,只留下每条记录的惟一样本。

(2)语法
unip [选项] [文件]

(3)选项说明

-c: 显示输出中,在每行行首加上本行在文件中出现的次数。它可取代“-u”和“-d”选项
-d: 只显示重复行
-u: 只显示文件中不重复的各行
-n: 前n个字段与每个字段前的空白一起被忽略。一个字段是一个非空格、圣诞非表符的字符串,彼此由制表符和空格隔开(字段从0开始编号)
+n: 前n个字符被忽略,之前的字符被跳过(字符从0开始编号)

(4)例:删除名为fruit的文件中的重复行并将其保存到一个名为newfruit的文件中

#cat fuit
Aaa
Aaa
Bbb
Bbb
#unip fruit newfruit
#cat newfruit
Aaa
Bbb

8.cut(从文件每个行中写出选定的字节、字符或字段)

(1)功能说明
从文件的每个行中写出选定的字节、字符或字段

(2)语法
cut {-b List[-n] | -C List | -f List [-s] [-d Character]} [文件]

(3)选项说明

-b: 指定字节位置。这些字节位置将忽略多字节字符边界,除非也指定了“-n”标志。
-c: 指定字符位置。例如,如果指定“-c 1-72”,cut命令将写出文件每一行的头72个字符。
-d: 使用Character变量指定的字符作为指定“-f”标志时的字段定界符。用户必须在对shell有特殊意义的字符(比如空格字符)上加上引号。
-f: 指定文件中设想被定界符(缺省情况下为制表符)隔开的字段的列表。
-n: 取消分割多字节字符。仅和“-b”标志一起使用。如果字符的最后一个字节落在由“-b”标志的List参数指示的范围之内,该字符将被写出;否则,该字符将被排除。
-s: 取消不包含定界符的行,仅和“-f”标志一起使用。

(4)例:显示文件/etc/passwd的登录名称和完整用户名称字段,这是第1个和第5个字段,由冒号隔开

#cut -f 1,5 -d : /etc/passwd
Su: User with special privileges
daemon:
bin:
sys:
adm: System Administrator
pierre: Pierre Harper
Joan: Joan Brown

9.comm(比较两个已排过序的文件)

(1)功能说明
比较两个已排过序的文件,并将其结果显示出来。

(2)语法
comm [-123] [--help] [file1] [file2]

(3)选项说明

-1: 不显示只在第1个文件里出现过的列
-2: 不显示只在第2个文件里出现过的列
-3: 不显示只在第1和第2个文件里出现过的列

(4)例:比较文件file1和file2

#cat file1
a
aa
#cat file2
a
bb
#comm file1 file2
a
aa
bb

(5)例:比较文件file1和file2,只显示文件file1和file2中共有的行

#comm -12 file1 file2
a
//file1和file2文件中相同的数据是a

10.diff(逐行比较两个文本文件,列出其不同之处)

(1)功能说明
逐行比较两个文本文件,列出其不同之处。它比comm命令完成更复杂的检查。它对给出的文件进行系统地检查,并显示出两个文件中所有不同的行,不要求事先对文件进行排序。

(2)语法
diff [选项] [file1] [file2]

(3)选项说明

-b: 忽略行尾的空格,而字符串中的一个或多个空格符都视为相等。如“How are you”与“How are you”被视为相同的字符串
-c: 采用上下文输出格式(提供3行上下文)
-Cn: 采用上下文输出格式(提供n行上下文)
-e: 产生一个合法的ed脚本作为输出
-r: 当file1和file2是目录时,递归作用到各文件和目录下

(4)例:比较文件file1和file2,列出其不同之处

#cat file1
a
aa
#cat file2
a
bb
#diff file1 file2
2c2
< aa
---
> bb
//可以看到文件file1和file2的不同处是aa和bb

以上内容转自:http://hi.baidu.com/eao110/blog/item/a4838613898750c6f6039e42.html

  评论这张
 
阅读(1164)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017