Linux 文件查看命令

文件查看命令more、less、head、tail;文件内容过滤grep;文件上传和下载命令rzsz

系统文件查看命令-more

[root@web02 ~]# more /etc/services

语法: 	more [选项] 文件
回车:		按行往下看
空格:		按页往下看
n:		向下查找
/: 		/xxx 搜索文件中含有xxx的内容行
q:		退出


系统文件查看命令-less

[root@web02 ~]# less /etc/services


less [选项] 文件

回车		#  按行往下查看
空格		# 按页往下查看
/		# 搜索内容,并高亮显示
n:		# 向下查找关键字
N:		# 向上查找关键字
gg		# 回到首行
G		# 到末尾
:		# 指定跳转行数


文件查看-head

语法: head 选项 文件
查看一个文件的前n行,默认前10行。

head /etc/services 	#显示这个文件的前十行内容
-n			# 指定显示的行数(可以省略)
-14			# 显示指定的前14行		

[root@oldboy opt]# head -n 10 /etc/passwd		#查看前十行
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin

[root@oldboy opt]# head -n 10 /etc/passwd 	#查看前十行
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin

[root@oldboy opt]# head /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin


文件查看-tail

语法: tail 选项 文件
查看一个文件的后n行,默认后10行。
tail /etc/services 	#显示这个文件的后十行内容

-n			# 指定显示的行数(可以省略)
-f			# 追踪文件末尾,实时查看文件的新内容。
-F				-f --retry
-c			# 显示多少个字符,空格也算字符
-14			# 显示指定的后14行		

tailf == tail -f

[root@oldboy opt]# tail /etc/passwd
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
gong:x:1000:1000::/home/gong:/bin/bash
	
[root@oldboy opt]# tail -1 /etc/passwd		# 显示后一行
gong:x:1000:1000::/home/gong:/bin/bash

[root@oldboy opt]# tail -n -1 /etc/passwd		# 显示后一行
gong:x:1000:1000::/home/gong:/bin/bash

[root@oldboy opt]# tail -c 10 /etc/passwd		# 查看后面十个字符
/bin/bash


grep

三剑客之一,配合管道符使用,也可单独使用,主要是用来过滤文件中的一些内容,配置正则使用,功能更加强大。

grep 选项 文件
过滤文件内容关键字,并且关键字所在行的内容打印出来。
		
-n			过滤文件内容并且打印出行号

[root@oldboy opt]# grep -n '.*' /etc/passwd
1:root:x:0:0:root:/root:/bin/bash
2:bin:x:1:1:bin:/bin:/sbin/nologin
3:daemon:x:2:2:daemon:/sbin:/sbin/nologin

-o			只显示关键字内内容
[root@oldboy opt]# grep -o 'root' /etc/passwd
root
root
root
root

-i			忽略大小写
[root@oldboy opt]# grep -i 'u' /etc/passwd
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin

-v			取反
[root@oldboy opt]# grep -v 'root' /etc/passwd
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

-w			精确匹配单词
[root@oldboy opt]# grep -w 'root' /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
grep '\broot\b'

-A			查找关键字并显示关键字后面几行的内容
[root@oldboy opt]# seq 20 |grep -A2 '^10'
10
11
12

-B			查找关键字并显示关键字前面几行的内容
[root@oldboy opt]# seq 20 |grep -B2 '^10'
8
9
10

-C			查找关键字并且显示前后几行的内容
[root@oldboy opt]# seq 20 |grep -C2 '^10'
8
9
10
11
12

-r			递归,对于指定目录下的所有文件过滤关键字
[root@oldboy opt]# grep -r 'root' ./*
./a.txt:root
./test.txt:root /code/dOcs

-R			同上,支持软链接的查找
-E			扩展正则表达式
[root@oldboy opt]# grep -E 'root|halt' /etc/passwd
root:x:0:0:root:/root:/bin/bash
halt:x:7:0:halt:/sbin:/sbin/halt
operator:x:11:0:operator:/root:/sbin/nologin


| :管道符,将左边命令的标准输出交给管道符右边内容的输入来处理。
[root@oldboy opt]# cat /etc/passwd|grep root
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin

^:	以什么开头
[root@oldboy opt]# grep ^root /etc/passwd
root:x:0:0:root:/root:/bin/bash

$:	以什么结尾
[root@oldboy opt]# grep '/sbin/nologin$' /etc/passwd
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

.*:	匹配任意内容
[root@oldboy opt]# grep '/sbin/nologin$' /etc/passwd
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

.: 任意字符(不包含空格)
[root@oldboy opt]# grep . a.txt 
a
b
root
c

[a-z] :匹配a-z的字符。
[root@oldboy opt]# grep [a-z] /etc/passwd
root:x:0:0:root:/root:/bin/bash

| :或者,配合egrep 使用
[root@oldboy opt]# grep -E 'root|halt' /etc/passwd
root:x:0:0:root:/root:/bin/bash

[root@oldboy ~]# grep '^app' /etc/services			# 过滤以app开头的行
[root@oldboy ~]# grep 'ssh' /etc/services			# 过滤含有ssh的内容
[root@oldboy ~]# grep 'Hub$' /etc/services			# 以Hub字符为结尾的行
[root@oldboy ~]# grep '.*' /etc/passwd				# 任意字符


文件的上传和下载-rzsz

# 如果没有安装需要下载
yum -y install lrzsz
rz		上传
sz		下载

# 把/etc/password 保存到本地,应当注意上传命令rz不支持上传单个文件大于4G,可以使用sftp的方式来进行上传,大文件。
[root@oldboy opt]# sz /etc/passwd

# wget
-O 指定需要下载的路径
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
上一篇:从0开始学习shell--tr工具的使用


下一篇:Linux文本处理工具与正则表达式详解