前言
。。。。。。。。
接着整理
wc 统计列数 wc本身就是参数 格式: wc [选项].. 目标文件 | 选项| 效果 | | ------ | ------ | | wc -l | 统计行数 | | wc -w | 统计单词个数 | | wc -c | 统计字节数 | | tab 空格 | 都算是分隔符 |
详解:
[root@localhost opt]# cp /etc/passwd /opt/passwd #从etc目录下面复制一个文件到 opt目录 方便测试
[root@localhost opt]# cd /opt #切换目录
[root@localhost opt]# ls # 查看文件夹下内容
abc passwd #复制内容显示 正常
[root@localhost opt]# wc passwd #统计文件列数
41 81 2098 passwd #分别代表行数41 单词数81 字节数2098
[root@localhost opt]# wc -l passwd #统计行数
41 passwd
[root@localhost opt]# wc -w passwd #统计单词个数
81 passwd
[root@localhost opt]# wc -c passwd #统计字节数
2098 passwd
grep(文本三剑客)过滤文本中 你感兴趣的内容(你需要的)
首先了解通配符和正则表达式 (粗略) 通配符: 匹配文件名字 ls find (多用于文件) 正则表达式:也称为regex或regexp,是一种强大的文本处理工具,用于匹配、检索和替换符合特定规则的文本。多用于匹配文章(文件)里面的内容 。 初步认识
代表以…字符开头 ^$ 空行
代表以..字符结尾 ^ root $ 代表一行只有root
待续……..
grep 选项 匹配式 文件或标准输入
| 选项 | 效果 | | ------ | ------ | | grep -i| 忽略大小写过滤| | grep ^# | 匹配以#开头的 | | grep -v | 反向匹配 | | grep -o | 只显示匹配内容 | | grep -r | 递归匹配 可以跟文件夹 可以用于过滤海量数据 | | grep -R | 可以处理软件链接 和-r的区别 | | grep -w | 匹配单词 | |grep -f| 对比两个文件的相同行 以文件作为匹配的条件 |grep -c| 统计匹配到的行数
详解: grep -i
[root@localhost opt]# grep -i ssh passwd #过滤文件中含有ssh的
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin #结果显示 三个 截图中已经标亮出来 匹配结果 不分大小写。
::: center :::
grep ^#
[root@localhost opt]# grep "^$" passwd #匹配空行
[root@localhost opt] #没有空行
gerp -v grep -c
[root@localhost opt]# grep -v "^$" passwd #过滤非空行
root:x:0:0:root:/root:/bin/bash #显示结果 比较多 不一一列出
.
.
.
[root@localhost opt]# grep -v "^$" passwd -c #显示出非空行的行数
41 #41行
[root@localhost opt]# wc -l passwd #没有空行 是用wc -l 检验一下
41 passwd #输出结果41行 无误。
gerp -o
[root@localhost opt]# grep -o nologin passwd #匹配nologin 并显示
nologin
nologin
nologin
nologin
.
.# 显示匹配结果 只显示过滤内容本身 并标亮。
::: center :::
grep -r
[root@localhost opt]# grep -r ftp . #匹配本文件夹下面的含有ftp的内容
./passwd:ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin #显示包含ftp的内容 区分大小写。
::: center :::
grep -f 处理两个文件相同内容 把第一个文件作为匹配条件
touch test #新建文件test 用匹配使用
vim test #编辑文件内容 加入字符 root
[root@localhost abc]# grep -f test /opt/passwd #显示匹配内容 test文件内容作为匹配条件 匹配passwd里面的内容 同样的进行显示标亮
[root@localhost abc]# grep -f test /opt/passwd -o #加上选项-o 可以只显示匹配内容。
root
root
root
root
::: center :::
待续。。。。。。
paste 合并文件
标准输出重定向:本来输出在屏幕上内容 ,改变了输出方向 输出到了文件中 如合并a和b两个文件 下合并 使用 > cat 文件名a 文件名b > 新文件名称
[root@localhost abc]# cat test test5 >test4 #test 和test5 合并
[root@localhost abc]# ls
test test3 test4 test5
[root@localhost abc]# cat test4
[root@localhost abc]# cat test4 #查看内容已经显示合并为新文件
root
123
456
dfg
hjk
123
左右合并:paste -d 指定分隔符
[root@localhost abc]# paste -d: test test5 #左右合并显示 中间s使用: 隔开
root:123
:
:
:
压缩
gzip 制作压缩文件 gzip -d 解压文件 bzip2 -k 保留源文件
归档 tar
tar 选项 。。归档文件名 源文件或者目录
| 选项 | 效果 | | ------ | ------ | | tar -j | 调用bizp2 | | tar -z | 调用gzip | | tar -c | 建立归档文件 | | tar f | 使用时必须添加 | | tar x | 解压缩 | |tar C | 指定解压的文件夹 | | tar p | 打包时 保留权限 | |tar v | 显示过程 解压和压缩 | | tar t | 不解包的情况下 查看包内文件 | 详解:
[root@localhost ~]# cd /opt #切换到空目录
[root@localhost opt]# touch 1.test 2.test #新建两个文件
[root@localhost opt]# ls #查看文件
1.test 2.test
[root@localhost opt]# tar -jcvf test.tar 1.test 2.test #将两个文件1和2 进行压缩打包为test.tar 的压缩包 并且显过程。
1.test
2.test
[root@localhost opt]# ls #查看结果 打包成功。
1.test 2.test test.tar
[root@localhost opt]# tar -jxvf test.tar #解压目标文件 test.tar
1.test
2.test
注:j压缩的包 只能j解压 z同理 或者解压时可以不写解压选项 默认解压。