文本处理常见命令

news2024/12/23 7:58:16

目录

前言-了解Linux目录结构

一、cat-查看文件内容

1.表现形式

2.常用选项

3.示例

二、more-查看文件内容

1.表现形式

2.交互操作方法

3.示例

三、less-查看文件内容

1.表现形式

2.交互操作方法

四、head-从头查看文件内容

五、tail-从尾查看文件内容

六、wc-统计文件内容

1.表现形式

2.选项

3.示例

七、grep-检索和过滤文件内容

1.表现形式

2.常用选项

3.示例

八、gzip、bzip2-制作压缩文件、解开压缩文件

1.压缩文件

2.解压缩

九、tar-归档命令

1.表现形式

2.常用命令

3.示例


前言-了解Linux目录结构

Linux目录结构

1.根目录

        所有分区、目录、文件等的位置起点

        整个树形目录结构中,使用独立的一个“/”表示

2.常见的子目录

/root 系统管理员root的家目录
/home 普通用户的家目录
/boot 系统内核、启动文件
/dev   设备文件
/etc配置文件
/bin   所有用户可执行的命令
/sbin管理员可执行的管理命令
/usr   应用程序
/var   日志文件

    

一、cat-查看文件内容

1.表现形式

cat  【选项】  文件名                #直接显示出整个文件的内容

cat 能够显示出整个文件的内容,所以适用于查看内容较少或较短的文件

2.常用选项

-n查看显示行号
-b查看忽略空行显示行号
-s查看时压缩连续空行为一个空行

3.示例

[root@bogon opt]# echo abc > abc.txt
[root@bogon opt]# echo 123 > 123.txt
[root@bogon opt]# ls
123.txt  abc.txt  rh
[root@bogon opt]# cat 123.txt        #查看文件内容
123


[root@bogon yum.repos.d]# cat -n CentOS-Base.repo        #-n 显示行号
     1  # CentOS-Base.repo
     2  #
     3  # The mirror system uses the connecting IP address of the client and the
     4  # update status of each mirror to pick mirrors that are updated to and
     5  # geographically close to the client.  You should use this for CentOS updates
     6  # unless you are manually picking other mirrors.
     7  #
     8  # If the mirrorlist= does not work for you, as a fall back you can try the
     9  # remarked out baseurl= line instead.
    10  #
    11  #
    12
    13  [base]
    14  name=CentOS-$releasever - Base
    15  mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
    16  #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
    17  gpgcheck=1
    18  gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    19
    20  #released updates
    21  [updates]
    22  name=CentOS-$releasever - Updates
    23  mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
    24  #baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
    25  gpgcheck=1
    26  gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    27
    28  #additional packages that may be useful
    29  [extras]
    30  name=CentOS-$releasever - Extras
    31  mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
    32  #baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
    33  gpgcheck=1
    34  gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    35
    36  #additional packages that extend functionality of existing packages
    37  [centosplus]
    38  name=CentOS-$releasever - Plus
    39  mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus&infra=$infra
    40  #baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
    41  gpgcheck=1
    42  enabled=0
    43  gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    44
[root@bogon yum.repos.d]#

二、more-查看文件内容

1.表现形式

more  【选项】  文件名                #全屏方式分页显示文件内容

2.交互操作方法

按Enter键向下逐行滚动
按空格键向下翻一屏
按b键向上翻一屏
按q键退出
下翻到最后一页后会自动退出

结合管道操作使用时(例如:Is-R/etc l more)无法向上翻页

3.示例

三、less-查看文件内容

1.表现形式

less  【选项】  文件名                #与 more 命令相同,但扩展功能更多

2.交互操作方法

Page Up 向上翻页,Page Down 向下翻页

按“”键查找内容,“n”下一个内容,“N”上一个内容

通过↑和↓方向键可以实现上下逐行滚动

其他功能与 more 命令基本类似

下翻到最后一页后不会自动退出

结合管道操作使用时可以向上翻页

四、head-从头查看文件内容

head  -n  文件名                #查看文件开头的一部分内容(默认为10行)

[root@bogon opt]# cat test.txt
1
2
3
4
5
6
7
8
9
10
[root@bogon opt]# head -5 test.txt        #查看前五行内容
1
2
3
4
5
[root@bogon opt]# head -n 5 test.txt        #查看前五行内容
1
2
3
4
5
[root@bogon opt]# head -n +5 test.txt        #查看前五行内容
1
2
3
4
5
[root@bogon opt]# head -n -5 test.txt        #查看除去后面5行的内容
1
2
3
4
5
[root@bogon opt]# head -n -3 test.txt        查看除去后面3行的内容
1
2
3
4
5
6
7
[root@bogon opt]#

五、tail-从尾查看文件内容

tail  -n  文件名                #查看文件结尾的一部分内容(默认为10行)

 

[root@bogon opt]# tail -3 test.txt         #查看后3层内容
8
9
10
[root@bogon opt]# tail -n 3 test.txt        #查看后3层内容
8
9
10
[root@bogon opt]# tail -n -3 test.txt        #查看后3层内容
8
9
10
[root@bogon opt]# tail -n +3 test.txt        #查看除去前3行的所有内容
3
4
5
6
7
8
9
10
[root@bogon opt]#

tail -f :表示动态实时查看,默认查看后10行(动态查看日志文件)

六、wc-统计文件内容

1.表现形式

wc  【选项】  目标文件                #统计文件中的单词数量(Word Count)等信息

2.选项

-l统计行数
-w统计单词个数
-c统计字节数

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

一个中文两个字节,一个英文一个字节

3.示例

[root@bogon opt]# cat test.txt
1
2
3
4
[root@bogon opt]# wc -l test.txt        #统计行数
4 test.txt

[root@bogon opt]# echo zhangsan > test3.txt        #统计行数和单词数
[root@bogon opt]# wc -lw test3.txt
1 1 test3.txt
[root@bogon opt]# wc -c test3.txt        #统计字节数,注意这里zhangsan是8个字节,还有一个字节是换行符
9 test3.txt
[root@bogon opt]# echo -n zhangsan > test3.txt        #-n 表示取消换行符
[root@bogon opt]# wc -c test3.txt        #除去换行符这里是8字节
8 test3.txt

七、grep-检索和过滤文件内容

1.表现形式

grep  【选项】  查找条件  目标文件                #在文件中查找并显示包含指定字符串的行

2.常用选项

-i表示不区分大小写
-v表示过滤的内容取反

-n

表示过滤显示行号
-c表示过滤的内容有几行
-o 表示仅仅显示过滤出的内容
-w 表示过滤一个单词
-f表示以文件a的内容为条件过滤文件b,也就是过滤出相同的部分
-A n显示匹配行和它后面的n行
-B n显示匹配行和它前面的n行
-C n匹配行和它前后的n行

3.示例

[root@bogon opt]# cat a.txt
aa
bb
cc
dd
11
22
33
[root@bogon opt]# cat b.txt
a
bb
c
d
11
22
3
[root@bogon opt]# grep -f a.txt b.txt        #过滤出两个文件中一样的内容
bb
11
22

[root@bogon opt]# grep -o 1* a.txt        #-o 显示过滤出的内容
11


[root@bogon opt]# grep -A 1 c b.txt        #显示匹配行和它后面的n行,这里n=1
c
d
[root@bogon opt]# grep -B 1 c b.txt        #显示匹配行和它前面的n行
bb
c
[root@bogon opt]# grep -C 1 c b.txt        #显示匹配行和它前后的n行
bb
c
d
[root@bogon opt]#

八、gzip、bzip2-制作压缩文件、解开压缩文件

1.压缩文件

gzip  [-9]  文件名         
bzip2  [-9]  文件名

压缩比可以是 -1(压缩速度最快,性能消耗最小,压缩比最低) 到 -9(压缩速度最慢,性能消耗最大,压缩比最高) 

[root@bogon opt]# ls
a.txt  b.txt  c.txt  rh
[root@bogon opt]# gzip *.txt
[root@bogon opt]# ls
a.txt.gz  b.txt.gz  c.txt.gz  rh
[root@bogon opt]#


[root@bogon opt]# bzip2 *.txt
[root@bogon opt]# ls
a.txt.bz2  b.txt.bz2  c.txt.bz2  rh

2.解压缩

gzip  -d   .gz格式的压缩文件

bzip  -d   .bz2格式的压缩文件

[root@bogon opt]# gzip -d *.gz
[root@bogon opt]# ls
a.txt  b.txt  c.txt  rh
[root@bogon opt]#


[root@bogon opt]# bzip2 -d *.bz2
[root@bogon opt]# ls
a.txt  b.txt  c.txt  rh

九、tar-归档命令

1.表现形式

tar 【选项】  归档文件名  源文件或目录                #制作归档文件、释放归档文件

tar 【选项】   归档文件名  [-C目标目录]

2.常用命令

-f表示归档,一定一定要加-f 要不然报错
-z表示用gzip格式压缩,这种压缩方式压缩率更高
-j表示用bzip2格式压缩
-c表示创建压缩
-C表示解压至某个文件夹
-x解压
-v显示过程
-t查看压缩文件内有哪些文件(一定与-f一起使用)

3.示例

[root@bogon opt]# ls
a.txt  b.txt  c.txt  rh
[root@bogon opt]# tar -czvf test.tar.gz *.txt        #通过tar命令,使用压缩包,用gzip格式压缩,显示详细过程,使用归档文件
a.txt
b.txt
c.txt
[root@bogon opt]# ls
a.txt  b.txt  c.txt  rh  test.tar.gz
[root@bogon opt]#

[root@bogon opt]# ls
rh  test.tar.gz
[root@bogon opt]# tar -zxvf test.tar.gz        #解压缩
a.txt
b.txt
c.txt
[root@bogon opt]# ls
a.txt  b.txt  c.txt  rh  test.tar.gz

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1583706.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

设计模式学习笔记 - 设计模式与范式 -行为型:10.迭代器模式(中):遍历集合时,为什么不能增删集合?

概述 上篇文章,我们通过给 ArrayList 和 LinkedList 容器实现迭代器,学习了迭代器模式的原理、实现和设计意图。迭代器模式主要主要是解耦容器代码和遍历代码。 本章,我们来深挖一下,如果在使用迭代器遍历集合的同时增加、删除集…

1999-2022年各省研究与试验发展人员全时当量数据/省研发人员全时当量数据/(RD)人员全时当量(无缺失)

1999-2022年各省研究与试验发展人员全时当量数据/省研发人员全时当量数据/(R&D)人员全时当量(无缺失) 1、时间:1999-2022年 2、来源:科技年鉴 3、指标:研究与试验发展人员全时当量/研发人员全时当量 4、范围&a…

代码随想录算法训练营Day50|LC123 买卖股票的最佳时机IIILC188 买卖股票的最佳时机IV

一句话总结:虽然是困难题,其实都只需要对122 买卖股票的最佳时机II稍作变形即可。 原题链接:123 买卖股票的最佳时机III 相较于买卖股票的最佳时机和股票II来说,本题加了最多操作两次的限制。那么这里实际上就可以直接用滚动数组…

用C代码实现环形缓冲区(ring buf)

用C代码实现环形缓冲区(ring buf) 概述环境介绍launch.json(没改)tasks.json注意 代码ringbuf.cringbuf.hmain.c 测试说明工程代码下载 概述 因嵌入式项目需要,串口接收的数据有很高的周期性发送频率,原方式通过查询接…

小程序项目思路分享爬虫

小程序项目思路分享爬虫 具体需求: 有这几个就行,门店名称门店地址门店类型,再加上省、市、县/区门店名称:storeName 门店地址:storeAddress 程序运行: honor_spider获取经纬度信息。 经纬度——>详…

Mybatis plus 使用通用枚举

说明&#xff1a;mybatis plus 使用枚举可实现数据库存入时指定值保存&#xff0c; 读取时指定值展示&#xff08;返给前端&#xff09; 可通过继承IEnum<T>、 EnumValue实现 1、引包 <dependency><groupId>mysql</groupId><artifactId>mysql-…

esxi上给centos7虚拟机扩容硬盘

原来centos7硬盘分配的空间只有40GB 需要直接扩容到200GB 扩容前 扩容后 扩容步骤&#xff1a; 1 .在esxi平台上关机虚拟机&#xff0c;将硬盘调整为200GB&#xff0c;然后开机 2.请出chatGPT 1. 创建新分区 使用剩余的磁盘空间创建一个新的分区。你可以使用fdisk&#xf…

归档数据shell脚本

系统中数据很重要&#xff0c;为确保数据不会丢失&#xff0c;定时备份数据是一个必要的习惯。制定一个存储重要文件的数据备份计划也绝非易事&#xff0c;而shell脚本可以祝我们一臂之力。 1.创建需要备份配置文件的路径文件。(BACKUP_FILE) 2.以日期为备份文件的后缀。 3.判断…

LeetCode 热题 100 | 多维动态规划(二)

目录 1 5. 最长回文子串 2 1143. 最长公共子序列 菜鸟做题&#xff0c;语言是 C 1 5. 最长回文子串 核心思想&#xff1a;把总问题拆解为若干子问题。 总问题&#xff1a;从第 i 个字母到第 j 个字母是回文串子问题&#xff1a;从第 i 1 个字母到第 j - 1 个字母是回文…

【就近接入,智能DNS-Geo DNS ,大揭秘!】

做过后端服务或者网络加速的小伙伴&#xff0c;可能或多或少都听说过&#xff0c;智能DNS或者Geo DNS&#xff0c;就是根据用户的位置&#xff0c;返回离用户最近的服务节点&#xff0c;就近接入&#xff0c;以达到服务提速的效果。 那么大家有没想过&#xff0c;这个背后的原理…

ETLCloud结合kafka的数据集成

一、ETLCloud中实时数据集成的使用 在ETLCloud中数据集成有两种方式&#xff0c;一种是离线数据集成&#xff0c;另一种便是我们今天所要介绍的实时数据集成了&#xff0c;两者的区别从名字便可以得知&#xff0c;前者处理的数据是离线的没有时效性的&#xff0c;后者的数据是…

【Keil5-Boot和APP配置】

Keil5-Boot和App配置 ■ Keil5-Boot和APP配置■ 一&#xff1a;sct文件 sct文件配置■ 二&#xff1a;发布版本不需要在 C/C&#xff0c;Asm&#xff0c;Linker&#xff0c;中添加 CMDDEBUG 宏定义。■ 三&#xff1a;Debug版本需要在Linker添加 --pd"-DCMDDEBUG" 才…

4.进程相关 2

8.内存映射 8.1 内存映射相关定义 创建一个文件&#xff0c;将保存在磁盘中的文件映射到内存中&#xff0c;后期两个进程之间对内存中的数据进行操作&#xff0c;大大减少了访问磁盘的时间&#xff0c;也是一种最快的 IPC &#xff0c;因为进程之间可以直接对内存进行存取 8.…

视觉大模型--DeformableDETR

原理大家可以参考这篇文章&#xff0c;我这边主要介绍几个公式和整体源码理解。 提出了多尺度可变形注意力(Multi-scale Deformable Attention, MSDA).基于此设计了 DETR 特有的利用多尺度特征检测的流程&#xff0c;对之后的很多工作有指导意义。提出了两阶段 DETR 的思路&…

OpenHarmony应用开发引入开源C/C++库---之Har包里的NDK

Har 包 HAR&#xff08;Harmony Archive&#xff09;是静态共享包&#xff0c;可以包含代码、C 库、资源和配置文件。通过 HAR 可以实现多个模块或多个工程共享 ArkUI 组件、资源等相关代码。HAR 不同于 HAP&#xff0c;不能独立安装运行在设备上&#xff0c;只能作为应用模块…

pandas常用的一些操作

EXCLE操作 读取Excel data1 pd.read_excel(excle_dir) 读Excel取跳过前几行&#xff1a; data1 pd.read_excel(excle_dir,skiprows1) 获取总行数 data1.shape[0] 获取总列数 data1.shape[1] 指定某列数据类型 data1 pd.read_excel("C:数据导入.xlsx",dtype…

设计模式——装饰器模式09

装饰器模式&#xff1a;是在原有基础上进行装饰&#xff08;无修改原来代码&#xff09;&#xff0c;来添加新的功能。 例如下面对普通耳机进行装饰。 设计模式&#xff0c;一定要敲代码理解 修饰对象&#xff08;抽象&#xff09; /*** author ggbond* date 2024年04月07日…

Unity核心学习

目录 认识模型的制作流程模型的制作过程 2D相关图片导入设置图片导入概述纹理类型设置纹理形状设置纹理高级设置纹理平铺拉伸设置纹理平台打包相关设置 SpriteSprite Editor——Single图片编辑Sprite Editor——Multiple图片编辑Sprite Editor——Polygon图片编辑SpriteRendere…

【汇编语言实战】统计个数(创新版)

内存中有10个分布在0至100内的正整数&#xff0c; 求小于60的数的个数num1&#xff0c;大于或等于60且小于80的数的个数num2&#xff0c;大于或等于80且小于100的数的个数num3 C语言描述该程序流程&#xff1a; #include <stdio.h> int main() {int a[]{1, 20, 95, 32,…

Python | 超前滞后分析

Nino SST Indices (Nino 12, 3, 3.4, 4; ONI and TNI) 有几个指标用于监测热带太平洋&#xff0c;所有这些指标都是基于海表温度(SST)异常在一个给定的区域的平均值。通常&#xff0c;异常是相对于30年的周期来计算的。厄尔尼诺3.4指数(Nio 3.4 index)和海洋厄尔尼诺指数(Ocea…