Linux三剑客(下)

简介: Linux三剑客(下)

Linux三剑客(上)+https://developer.aliyun.com/article/1623586

2.2、找出所有以m开头的行

[root@1-VM00013 data]# grep -i -n '^m' luffy.txt
7:my name is linghu

2.3、输出所有以m开头的行

[root@1-VM00013 data]# grep -i -n '^m' luffy.txt |grep -i -n '.*
1:7:maybe
2:9:my boy is you
3:11:my name is linghu

2.4输出所有以i开头的行

[root@1-VM00013 data]# grep -i -n '^i' luffy.txt |grep -i -n '.*
1:1:I am linghu
2:3:I teach linux
3:5:i like python

2.5找出所有允许登录的用户,解释器是/bin/bash的行

[root@1-VM00013 data]# cat /etc/passwd > ./pwd.txt
[root@1-VM00013 data]# grep -n "/bin/bash$" pwd.txt
1:root:x:0:0:root:/root:/bin/bash
41:zshield:x:1000:1000:zshield:/home/zshield:/bin/bash
44:testlinghu:x:94619:94619::/home/testlinghu:/bin/bash
##只输出匹配的内容
[root@1-VM00013 data]# grep -n "/bin/bash$" pwd.txt -o
1:/bin/bash
41:/bin/bash
44:/bin/bash
##找出s匹配的内容
[root@1-VM00013 data]# grep ".s" luffy.txt 
my boy is you
my name is linghu
#zhushi bu huai bei du qu
[root@1-VM00013 data]#

  • sed:文本编辑工具
  • awk:文本报告生成器

三、sed与正则表达式

sed对文件实现快速的增删改查,模式匹配。

3.1、输出文件第二行、第三行

[root@1-VM00013 data]# sed "2,3p" luffy.txt -n
I teach linux

3.2、过滤出含有“Linux”字样的文本

[root@1-VM00013 data]# sed "/linux/p" luffy.txt -n
I teach linux

3.3、删除含有game的行

[root@1-VM00013 data]# sed "/game/d" luffy.txt -i

3.4、全局替换,将my换成i

[root@1-VM00013 data]# sed "s/My/I/g" luffy.txt -i

四、sed配合正则表达式企业案例

4.1、取出linux的ip地址【去头去尾】

上图,通过三个管道符对命令进行过滤。

五、Linux三剑客awk

awk适合处理匹配到的文本。

awk更像是一门编程语言,支持条件判断、数组、循环等功能。

一、
  用awk '{printf $0}' change.txt可以打印chage.txt所有的数据
  
二、
  用awk '{printf $1$2}' change.txt可以打印第一列和第二列的数据(可以加逗号)
  用awk '{printf "第一列:"$1,"第二列:"$2,"第三列:"$3}' change.txt

5.1、显示文件第五行

5.2、输出第一行到第三行

5.2、利用awk取出ip地址信息

5.3、awk做分隔

首先看一下测试文件pwd.txt里的用户:

我们来做一个分隔,分割出第一列用户信息:

5.4、awk变量

一、自定义变量

[root@1-VM00013 data]# awk -v myname="令狐" 'BEGIN{print "我的名字是:",myname}'
我的名字是: 令狐

二、变量赋值

[root@1-VM00013 data]# myname="令狐荣豪"
[root@1-VM00013 data]# echo $myname
令狐荣豪
[root@1-VM00013 data]# awk -v awk_name=$myname 'BEGIN{print awk_name}'
令狐荣豪

5.5、awk模式pattern

六、at与mailx命令

6.1、linux定时任务

[root@1-VM00013 ~]# at now+1min
at> touch /tmp/linghu.txt
at> <EOT>
job 1 at Fri Apr 29 14:21:00 2022


目录
相关文章
|
3月前
|
存储 Linux 数据安全/隐私保护
linux cryptsetup
cryptsetup 是一个用于设置和管理 LUKS 加密卷的命令行工具,常用于 Linux 系统。它可以创建、打开、关闭加密卷,更改密码,添加和删除密钥槽,以及显示卷信息,确保数据安全和隐私。
82 2
|
9月前
|
NoSQL Java Linux
Linux
Linux
46 0
|
9月前
|
网络协议 Unix Linux
初识Linux
初识Linux
53 0
|
Linux
LINUX
用户和组
46 0
|
NoSQL Linux 网络安全
linux问题总结
linux问题总结
|
Unix Java Linux
linux
部署项目到Linux中需要注意一下内容: - 项目要保证在Windows下是没有问题的,再部署到Linux。 - 连接线上的数据库,代码需要修改成线上数据库的地址 - 将Maven项目打包 - 在部署到Linux操作系统中后,测试时查看日志。 [root@localhost ~]# cd /usr/local [root@localhost local]# cd apache-tomcat-8.5.23/ [root@localhost apache-tomcat-8.5.23]# cd logs [root@localhost logs]# tail -f catalina.out
linux
|
存储 网络协议 安全
[ linux ] 一篇文章让你掌握什么是linux
都说好的开始是成功的一半,那学习 Linux 的第一个问题是搞明白什么是 Linux ,了解其来龙去脉、前世今生,了解其发展趋势、应用前景,弄清楚为什么学习它,以及如何掌握它和使用它,知其然更要知其所以然。 本文希望让读者对 Linux 有一个宏观的认识,总览其整体,后续再依次讲解 Linux 的每一部分的知识点。 很多人看技术类图书都不喜欢或不重视第一章,甚至直接跳过去,觉得大多是介绍性的内容,且没什么 技术含量。然而我想说的是工欲善其事,必先利其器。建议不管学什么,不管看什么书籍,都不要忽视第一章的学习。
232 0
|
存储 Linux 文件存储
8.6 Linux /etc/gshadow
前面讲过,/etc/passwd 文件存储用户基本信息,同时考虑到账户的安全性,将用户的密码信息存放另一个文件 /etc/shadow 中。本节要将的 /etc/gshadow 文件也是如此,组用户信息存储在 /etc/group 文件中,而将组用户的密码信息存储在 /etc/gshadow 文件中。
173 0
8.6 Linux /etc/gshadow
|
Web App开发 IDE Java
玩转 Manjora,原来大神都是这么用 Linux!
玩转 Manjora,原来大神都是这么用 Linux!
271 0
玩转 Manjora,原来大神都是这么用 Linux!
|
Unix Linux
bpftrace (DTrace 2.0) for Linux 2018
文章翻译自: [原文链接](http://www.brendangregg.com/blog/2018-10-08/dtrace-for-linux-2018.html) 译者: 姜弋 译者注: 原作者是大名鼎鼎的性能分析专家:Brendan Gregg,现在工作在Netflix,之前工作在Sun,在Sun公司的时候,他就做了大量的性能分析和tracing相关的工作,在Sun的Solari
1594 0