主要有:file、cat、head、tail、more、less、umask、wc
Llinux包含许多帮助我们用不同方式读取文件的命令。比如我们可以验证文件的不同类型,可以从顶端或者从底端开始读取文件,以及可以限制读取在几行,也可以设置通读,当然我们可以统计一个文件内的行数,单词和字符数,此外还包括一些搜索文件的命令。
1.file命令
file通过探测文件内容判断文件类型,使用权限是所有用户。
用法:
file [options] 文件名
[options]主要参数
-v:在标准输出后显示版本信息,并且退出。
-z:探测压缩过的文件类型。
-L:允许符合连接。
-f name:从文件namefile中读取要分析的文件名列表。
2.cat命令
cat(“concatenate”的缩写)命令用于连接并显示指定的一个和多个文件的有关信息,它的使用权限是所有用户。
用法:
cat [options] 文件1 文件2……
[options]主要参数
-n:由第一行开始对所有输出的行数编号。
-b:和-n相似,只不过对于空白行不编号。
-s:当遇到有连续两行以上的空白行时,就代换为一行的空白行。
这条命令可以顺序地读取多个文件,用法:cate file1 file2
cat 是一个文本文件查看和连接工具。查看一个文件的内容,用cat比较简单,就是cat 后面直接接文件名。
比如:
为了便于新手弟兄灵活掌握这个工具,我们多说一点常用的参数;
2.0 cat 语法结构;
选项
-A, --show-all 等价于 -vET
-b, --number-nonblank 对非空输出行编号
-e 等价于 -vE
-E, --show-ends 在每行结束处显示 $
-n, --number 对输出的所有行编号
-s, --squeeze-blank 不输出多行空行
-t 与 -vT 等价
-T, --show-tabs 将跳 字符显示为 ^I
-u (被忽略)
-v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
--help 显示此帮助信息并离开
2.1 cat 查看文件内容实例;
[root@localhost ~]# cat -b/etc/fstab
[root@localhost ~]# cat -n/etc/profile
[root@localhost ~]# cat
cat 加参数-n 和nl工具差不多,文件内容输出的同时,都会在每行前面加上行号;
[root@localhost ~]# nl
cat 可以同时显示多个文件的内容,比如我们可以在一个cat命令上同时显示两个文件的内容;
cat 对于内容极大的文件来说,可以通过管道|传送到more 工具,然后一页一页的查看;
2.2 cat 的创建、连接文件功能实例;
cat 有创建文件的功能,创建文件后,要以EOF或STOP结束;
> 我来测试 cat创建文件,并且为文件输入内容;
> 北南南北测试;
>EOF
[root@localhost ~]# catlinuxsir.org.txt
我来测试 cat 创建文件,并且为文件输入内容;
北南南北 测试;
假设我们有sir01.txt、sir02.tx和sir03.txt ,并且内容如下;
123456
i am testing
[root@localhost ~]# cat sir02.txt
56789
BeiNan Tested
[root@localhost ~]# cat sir03.txt
09876
linuxsir.org testing
我想通过cat 把sir01.txt、sir02.txt及sir03.txt三个文件连接在一起(也就是说把这三个文件的内容都接在一起)并输出到一个新的文件sir04.txt 中。
注意:其原理是把三个文件的内容连接起来,然后创建sir04.txt文件,并且把几个文件的内容同时写入sir04.txt中。特别值得一提的是,
如果您输入到一个已经存在的sir04.txt文件,会把sir04.txt内容清空。
[root@localhost ~]# more sir04.txt
123456
i am testing
56789
BeiNan Tested
09876
linuxsir.org testing
cat把一个或多个已存在的文件内容,追加到一个已存在的文件中
linuxsir.org forever
[root@localhost ~]# cat sir01.txt sir02.txt sir03.txt>> sir00.txt
[root@localhost ~]# cat sir00.txt
linuxsir.org forever
123456
i am testing
56789
BeiNan Tested
09876
linuxsir.org testing
3.head和tail命令
head和tail命令可以分别从顶端或者底端看查看文件的内容,区别就是一个是从头一从末开始。.
用法:
head 300b test.txt 查看text.txt文件的前300个字节
head test.txt 查看text.txt文件的前3MB
tail -n55 test.txt 查看text.txt文件的后55行
tail 4k test.txt 查看text.txt文件的后4KB个字节
4.more和less命令
和head和tail命令相似但有点不同,more和less命令不是对立的多或者少。它们都从一个文本文件的开口处开始。当对一个文本文件执行这两条命令时,我们将都一次一页地查看文件的内容,它们都允许使用键盘上的PageUp和PageDown,退出只需按q键或者ctrl+c。less命令还具有vi编辑程序的优点,可以使用一些vi的命令搜索文件
用法:
more test.txt 查看文件text.txt的内容
less test.txt 查看文件text.txt的内容
说明:①less 并未在一开始就读入整个档案,因此在遇上大型档案的开启时,会比一般的文书编辑器(如 vi)来的快速。②如果LESS无法查看中文,你需要设置环境变量:export LESSCHARSET=iso8859。
5.umask命令
当创建一个新的文件或目录时,我们所获得的权限取决于所谓的umask的值,在命令行界面中键入umask,将会看到权限的当前数字掩码(masked)值
如输入:#umask
得到结果:0022
对掩码数字的理解,nmask中的第一个数字目前未得到使用,因此实际的umask是022。umask不允许用户在任何文件上配置执行(x=1)权限,每一个文件的掩码值就像777减去644,就是022及rw--r--r。也是说对于一个新文件,所有者拥有读取和写入的权限,所有者组和其他成员则只拥有读取的权利。
6.wc命令
wc命令是用来统计的,比较简单易懂。wc命令可以一个文本文件进行行、字符、单词的统计。
用法: 执行结果
wc -l test.txt 统计test.txt文件中的行数
wc -c test.txt 统计test.txt文件中的字符数
wc -w test.txt 统计test.txt文件中的单词数
7. sed命令
查看文件中间一段,你可以使用sed命令,如:
sed -n '5,10p' /etc/passwd
这样你就可以只查看文件的第5行到第10行。
其它一些技巧:
1.输出重定向:
tail -f a.txt >> b.txt &
2.退出:ctrl+c或 ctrl+break