【Linux】初见“wc命令”,“grep命令”,“zip命令”,“tar命令”

文章目录

  • 1.wc命令
    • 1.1 wc命令总结
  • 2.grep命令
    • 2.1 grep命令总结
  • 3.gzip、bzip2命令
    • 3.1 gunzip、bunzip2命令
  • 4.tar命令
    • 4.1 zip命令

1.wc命令

统计文件内容:统计文件中的单词数量(word count)等信息。

wc命令格式:wc [选项]…目标文件

常用命令选项:

-l:统计行数

-w:统计单词个数

-c:统计字节数

注:不带任何选项的wc命令,默认同时使用-lwc三个选项.

wc -l命令

[root@clr /usr]# cat 2.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[root@clr /usr]# wc -l 2.txt  #统计2.txt这个文件中的行数
20 2.txt
[root@clr /usr]# cat 2.txt |wc -l  #利用管道符查看并统计指定文件的行数,只显示行数,不显示文件名
20

wc -w命令

[root@clr /usr]# cat 3.txt
123      456    789
[root@clr /usr]# wc -w 3.txt   #统计3.txt这个文件中的单词数
3 3.txt

wc -c命令

[root@clr /usr]# wc -c 3.txt  #统计指定文件中单词的数量
12 3.txt
[root@clr /usr]# cat 3.txt   #行首和文档结尾处\n结束符,也算一个字节数
123
4455ffd

wc命令不加任何选项,默认同时显示-lwc三个选项的功能;

在这里插入图片描述

[root@clr /usr]# cat 3.txt | wc  #wc结合管道符一起使用,不显示文件名,依次表示2行内容,2个单词,12个字节数
      2       2      12

1.1 wc命令总结

  • wc -l:显示总行数,包括空行占用的行数也计入在内;

  • wc -w:按照空格、tab或换行进行统计单词数

  • wc -c:按照空格、tab或空行统计字节数(空行、换行符以及结尾符都算作是一个单独的字节);

2.grep命令

在文件中查找并显示包含指定字符串的行

grep命令格式:grep [选项]…查找条件 目标文件

grep的常用选项

优化名称 操作关键字
-i 查找时不区分大小写
-v 显示不包含匹配文本的所有行(反向查询,反向匹配)
-c 只输出匹配到的总行数(不是匹配到的次数)
-n 显示匹配行及行号
-e 实现可多个查找条件的匹配,逻辑or关系
-E 支持使用扩展正则表达式,相当于使用egrep命令
-o 精确匹配,即“仅匹配”之意,统计并显示统计匹配到的次数
-A n 显示匹配行和它后面的n行
-B n 显示匹配行和它前面的n行
-C n 匹配行和它前后各n行
-l 列出文件内容符合指定的样式的文件名称
-w 只显示全字符合的列,只显示满足完整目标单词所在的行

查找条件设置:

  • 要查找的字符串以双引号括起来

  • “^…” 表示以…开头,”…$”表示以…结尾

  • “^$”表示空行

易误点:

通配符主要用在Linux的Shell命令中,常用于文件或者文件名称的操作,而正则表达式用于文本内容中的字符串搜索和替换,常用在awk、grep、sed、vim工具中对文本的操作

通配符类型详解:

*						0个或者多个字符、数字;
?						匹配任意一个字符;
#						表示注解;
|						管道符号;
;						多个命令连续执行;
&						后台运行指令;
!						逻辑运算非;
[ ]						内容范围,匹配括号中内容;
{ }						命令块,多个命令匹配。

正则表达式详解:

*						前一个字符匹配0次或多次;
.						匹配除了换行符以外任意一个字符;
.*						代表任意字符;
^						匹配行首,即以某个字符开头;
$						匹配行尾,即以某个字符结尾;
(..) 					标记匹配字符;
[]						匹配中括号里的任意指定字符,但只匹配一个字符;
[^]						匹配除中括号以外的任意一个字符;
\						转义符,取消特殊含义;
\< 						锚定单词的开始;
\> 						锚定单词的结束;
{n}						匹配字符出现n次;
{n,}					匹配字符出现大于等于n次;
{n,m}					匹配字符至少出现n次,最多出现m次;
\w 						匹配文字和数字字符,不匹配符号;
\W 						\w的反置形式,匹配一个或多个非单词字符,匹配符号;
\b 						单词锁定符;
\s						匹配任何空白字符;
\d						匹配一个数字字符,等价于[0-9]。
//sed工具的正则与grep工具的正则有2个不一样,是{}和(),sed中应该是\{..\}和\(..\) .

grep命令

在这里插入图片描述

grep -i命令

[root@clr ~]# grep -i system anaconda-ks.cfg   #查询指定文件中所有含有system的行,并且不区分大小写
# System authorization information
# System language
# System services
# System timezone
# X Window System configuration information
# System bootloader configuration
@network-file-system-client

[root@clr ~]# grep "^#" anaconda-ks.cfg   #查找指定文件中,所有以#号开头的行,并显示出来
#version=DEVEL
# System authorization information
# Use CDROM installation media
# Use graphical install
# Run the Setup Agent on first boot
# Keyboard layouts
# System language
# Network information
# Root password
# System services
# System timezone
#

你可能感兴趣的:(Linux,云计算,运维,linux,运维,云计算)