[Linux] 常用命令--文件操作grep/nl/more/less/head tail/set
创始人
2024-02-24 01:45:25

✨✨个人主页:沫洺的主页

📚📚系列专栏: 📖 JavaWeb专栏📖 JavaSE专栏 📖 Java基础专栏📖vue3专栏

                         📖MyBatis专栏📖Spring专栏📖SpringMVC专栏📖SpringBoot专栏

                         📖Docker专栏📖Reids专栏📖MQ专栏📖SpringCloud专栏📖Linux专栏

💖💖如果文章对你有所帮助请留下三连✨✨

🍓文件操作

🥭grep

参考文章: grep命令

grep [OPTIONS] PATTERN [FILE...]

  • --color=auto 对匹配到的文本着色显示
  • -v 显示不被pattern匹配到的行
  • -i 忽略字符大小写
  • -n 显示匹配的行号
  • -c 统计匹配的行数
  • -o 仅显示匹配到的字符串
  • -q 静默模式,不输出任何信息
  • -A # after, 后#行
  • -B # before, 前#行
  • -C # context, 前后各#行
  • -e 实现多个选项间的逻辑or关系
  • grep –e ‘cat ’ -e ‘dog’ file
  • -w 匹配整个单词

准备test.txt文件

vim test.txt

i开启输入模式 ESC输入:wq!强制保存并退出

内容如下:

dlf test
dlfthinkwww.baidu.com
TEST 123
Dlf's lemon
grep Grep
abc
abc123abc
123dlf123
[www.baidu.com]

查看文件

cat test.txt

1) grep -i "test" test.txt 搜索出含有“test” 字符串(-i:不区分大小)

2) grep -i -n "test" test.txt 搜索出含有“test” 字符串,并打印行号

 

3) grep -i -n --color "test" test.txt 搜索出含有“test” 字符串,并打印行号,关键字“test”颜色标记(centos7系统默认为grep命令配置了别名,所以不使用—color也能显示颜色,openEuler全兼容centos )

 

4) grep -i -c "test" test.txt,打印“test”字符串(不区分大小写)显示的次数

 

5) grep -i -o "test" test.txt,打印“test”字符串(不区分大小写),但不打印整行

准备test2.txt文件

vim test2.txt

i开启输入模式 ESC输入:wq!强制保存并退出

test2.txt文件内容如下:

姓名:测试1
年龄:18
身高:178姓名:测试2
年龄:23
身高:188姓名:测试3
年龄:21
身高:165

6) grep -A1 “18” test2.txt,打印“18”字符串和它下一行的信息

7) grep -B1 “18” test2.txt,打印“18”字符串和它上一行的信息

8) grep -C1 “18” test2.txt,打印“18”字符串和它上一行和下一行的信息

9) grep -w "dlf" test.txt,精确匹配出“dlf”字符串的 

10) grep -v "dlf" test.txt,匹配出不包含“dlf”字符串的行

 11) grep -e 'abc' -e 'dlf' test.txt,同时显示匹配”abc”或”test”字符串

🍐nl

参考文档: Linux之nl命令

  • -b a 无论是否是空行都列出行号
  • -b t 空行不列出行号(默认)。
  • -n ln 行号在显示栏的最左边显示。
  • -n rn 行号在显示栏的最右边显示,不填充0。
  • -n rz 行号在显示栏的最右边显示(默认)。
  • -w 行号显示栏占用的位数,(默认是6位)。
  • -p 在逻辑定界符处不重新开始计算

准备文件nl.txt

vim nl.txt

i开启输入模式 ESC输入:wq!强制保存并退出

内容如下

     入门小站rumenzping入门

用nl列出nl.txt的行号

用nl列出nl.txt的行号,包括空行

行号前面填充0

行号显示栏占3位,并且填充0

 

使用定制的编号分隔符

🍊more

参考文章: Linux之more命令

命令格式

more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ]

more名单中内置了若干快捷键,常用的有H(获得帮助信息),Enter(向下翻滚一行),空格(向下滚动一屏),Q(退出命令)。

🍋less

参考文章: Linux之less命令

Linux中的less命令主要用来浏览文件内容,与more命令的用法相似,不同于more命令的是,less命令可往回卷动浏览以看过的部分。less的用法比起more更加的有弹性。在more的时候,我们并没有办法向前面翻,只能往后面看,但若使用了less时,就可以使用 [pageup][pagedown]等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!除此之外,在less里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。

命令格式

less [参数] 文件

🍈head tail

参考文章: Linux 命令学习(1): head和tail

head

head 命令可以将一段文本的开头一部分输出到标准输出。

head命令既可以处理文本文件也可以处理标准输入。

处理文本文件:

 

当有多个文件输入时,head会顺序处理并输出:

处理标准输入:

 可选参数

-n: 输出的行数 后面也可以跟负数比如-5 表示除了后5行以外的全部内容。

 

-c: 输出的字节数 没有默认值,所以后面必须跟数值。可以是负数,表示输出除了后N个字节以外的内容。

head -c 5 input.txt    # 5 bytes  
head -c -5b input.txt   # 5*512 
head -c 5k input.txt    # 5*1024
head -c 5m input.txt    # 5*1048576

tail

将一段文本的结尾一部分输出到标准输出,也就是从倒数第N个位置开始输出。

基本用法

tail的参数基本用法和head完全一样,在此不作赘述。

只有一点需要注意,如果要表达从开头数的位置,例如从第N(比如25)行开始输出,要使用加号:

tail -n +25 nginx.txt
tail +5c nginx.txt    #从第5个字节开始打印

常见用法

tail 有一个常见的用法:用来实时查看一个不断更新的log file。例如后台有一个logfile.txt不断更新,我们可以用下面的命令将更新内容打印在屏幕上:

-f: 循环读取

🍇sed修改文件

参考文章: Linux sed 命令

Linux sed 命令是利用脚本来处理文本文件。

sed 可依照脚本的指令来处理、编辑文本文件。

sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。

在1.txt文件的第四行添加一行,并将结果输出到标准输出,原文不会改变

 将1.txt的内容列出并且列印行号,同时将第 2~3 行删除

g 标识符表示全局查找替换

相关内容

热门资讯

埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...