笔记

1、晨考

1、写出过滤手机号的正则表达式
1[0-9]{10}
2、写出过滤邮箱的正则表达式
chenyang@123.com
[a-zA-Z0-9-_]+@[a-z0-9]+\.(com|cn|com\.cn|net)
3、过滤密码,要求必须要大写字母、小写字母、数字以及下划线,长度在 8 到 16 之间
([A-Z]+[a-z]+[0-9]+_+){8,16}
4、过滤本地的IP ip a | grep -E '([(1[0-9]{2}){3}(2[0-4][0-9]){3}(25[0-4]){3}[0-9]{1,2}]\.){3}[(1[0-9]{2}){3}(2[0-4][0-9]){3}(25[0-4]){3}[0-9]{1,2}]' ([0-9]{1,3}\.){3}[0-9]{1,3}

2、昨日问题


3、今日内容

1、文本处理命令
2、linux三剑客之sed
2.1、定位

4、文本处理命令

1、sort命令
用于将文件内容加以排序 -n # 依照数值的大小排序
-r # 以相反的顺序来排序
-k # 以某列进行排序
-t # 指定分割符,默认是以空格为分隔符 cat 3.txt | sort -n -r -k3 -t '|' 2、uniq 命令
用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用 -c # 在每列旁边显示该行重复出现的次数。
-d # 仅显示重复出现的行列。
-u # 仅显示出一次的行列 3、cut 命令
cut命令用来显示行中的指定部分,删除文件中指定字段 -d # 指定字段的分隔符,默认的字段分隔符为"TAB";
-f # 显示指定字段的内容; 4、tr命令
替换或删除命令 -d # 删除字符 5、wc命令
统计,计算数字 -c # 统计文件的Bytes数;
-l # 统计文件的行数;
-w # 统计文件中单词的个数,默认以空白字符做为分隔符 注:在Linux系统中,一段连续的数字或字母组合为一个词。

5、linux三剑客之sed

sed是linux中,流媒体编辑器、流处理工具。
grep : 过滤文本
sed : 修改文本
awk : 处理文本 sed与awk的区别:
参考:https://www.zhihu.com/question/297858714 1、sed的格式
sed [参数] '处理规则' [操作对象] 2、参数
-e : 允许多项编辑
-n : 取消默认输出
-i : 就地编辑
-r : 支持拓展正则
-f : 指定sed匹配规则脚本文件 3、定位 1、数字定位法
指定行号。
sed '3d' 4.txt
sed '2,3d' 4.txt 2、正则定位法
指定正则定位。
sed '/^g/d' 2.txt 3、数字和正则定位法
sed '3,/^g/d' 2.txt 4、正则正则定位法
sed '/^g/,/^j/d' 2.txt 4、sed的编辑模式:
d :删除
p :打印
a : 在当前行后添加一行或多行
sed '2axxx' 4.txt
c :用新文本修改(替换)当前行
sed '2cxxx' 4.txt
i : 在当前行之前,插入文本(单独使用时)
sed '2ixxx' 4.txt
r : 在文件中读内容
sed '2r r.txt' 2.txt
w : 将指定行写入文件
sed '2w w.txt' 2.txt
y : 将字符转换成另一个字符
sed '2y/fa/FA/' 2.txt s : 将字符串转换成另一个字符串(每一行只替换一次)
sed 's/11/22/' 6.txt
g : 全部执行
sed 's/11/22/g' 6.txt
i : 忽略大小写(跟 s 模式一起使用时) & :代表前面匹配到的内容

6、案例

1、将nginx.conf中的注释行全部去掉

	[root@localhost ~]# sed '/^ *#/d' /etc/nginx/nginx.conf

2、将nginx.conf中每一行之前增加注释
[root@localhost ~]# sed 's/.*/# &/g' /etc/nginx/nginx.conf 3、要求一键修改本机的ip,
192.168.15.100 ---> 192.168.15.101
172.16.1.100 ---> 172.16.1.101
sed -i 's#.100#.101#g' /etc/sysconfig/network-scripts/ifcfg-eth[01] 4、将/etc/passwd中的root修改成ROOT
sed -i 's#root#ROOT#g' /etc/passwd

11、Linux基础--sort、uniq、cut、tr、wc、流处理工具sed的更多相关文章

  1. 文本处理命令(sort+uniq+cut+tr+wc)+三剑客之sed

    目录 文本处理命令+三剑客之sed 一.文本处理命令 1.排序命令 sort 2.检查/删除命令 uniq 3. cut 显示特定部分命令 4. 替换或删除命令 tr 5.统计 计算数字命令 wc 二 ...

  2. Linux之 sort,uniq,cut,wc命令详解

    sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序. sort语法 ...

  3. linux 基础2-null,cut,wc,head,tail

    一. 特殊文件: /dev/null和/dev/tty Linux系统提供了两个对Shell编程非常有用的特殊文件,/dev/null和/dev/tty.其中/dev/null将会丢掉所有写入它的数据 ...

  4. 【转帖】linux sort,uniq,cut,wc,tr,xargs命令详解

    linux sort,uniq,cut,wc,tr,xargs命令详解 http://embeddedlinux.org.cn/emb-linux/entry-level/201607/21-5550 ...

  5. linux sort,uniq,cut,wc命令详解

    linux sort,uniq,cut,wc命令详解 sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些 ...

  6. (转)linux sort,uniq,cut,wc命令详解

    linux sort,uniq,cut,wc命令详解 sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些 ...

  7. linux sort,uniq,cut,wc,tr命令详解

    sort是在Linux里非常常用的一个命令,对指定文件进行排序.去除重复的行 sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sor ...

  8. [转]linux sort,uniq,cut,wc命令详解

    sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序. sort语法 ...

  9. linux sort,uniq,cut,wc命令详解 (转)

    sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序. sort语法 ...

随机推荐

  1. Linux_yum安装时报404错误

    使用yum安装报错如下: [root@localhost ~]# yum install gcc 已加载插件:fastestmirror Loading mirror speeds from cach ...

  2. Go语言系列之标准库flag

    Go语言内置的flag包实现了命令行参数的解析,flag包使得开发命令行工具更为简单. os.Args 如果你只是简单的想要获取命令行参数,可以像下面的代码示例一样使用os.Args来获取命令行参数. ...

  3. 【涨姿势】原来golang的case <-time.After(xxx)还有这样的坑

    偶然看到这样一篇文章:<使用 pprof 排查 Golang 内存泄露>https://www.toutiao.com/i6881796351139676680/ 最后一段让我很疑惑: 修 ...

  4. 使用 fail2ban 保护 frp 服务

    背景 我们一般会使用 fail2ban 来保护暴露到公网的提供密码登录的 ssh 连接等. 但使用 frp 穿透后所有的从外网访问都会变成 127.0.0.1 进入的,原本能用 fail2ban 保护 ...

  5. golang中值类型的嵌入式字段和指针类型的嵌入式字段

    总结: 1. 值类型的嵌入式字段,该类型拥有值类型的方法集,没有值指针类型的方法集 2. 指针类型的嵌入式字段,该类型拥有值指针类型的方法集,没有值类型的方法集,并且,该类型的指针类型也有值指针类型的 ...

  6. Java中四种访问权限总结

    一.Java中有四种访问权限, 其中三种有访问权限修饰符,分别为private.public.protected,还有一种不带任何修饰符(default). 1. private: Java语言中对访 ...

  7. C++数据结构类型以及实现类

    1.array数组 #include<iostream> #include<array> using namespace std; int main() { array< ...

  8. linux虚拟机xshell安装

    目录 一:虚拟机安装 二:配置windows网络 三:linux操作系统安装 四:xshell安装使用 一:虚拟机安装 1.双击虚拟机软件 ---> 下一步 直至安装完毕 2.安装Linux操作 ...

  9. 「数据结构」Link-Cut Tree(LCT)

    #1.0 简述 #1.1 动态树问题 维护一个森林,支持删除某条边,加入某条边,并保证加边.删边之后仍然是森林.我们需要维护这个森林的一些信息. 一般的操作有两点连通性,两点路径权值和等等. #1.2 ...

  10. mysql加强(4)~多表查询

    mysql加强(4)~多表查询:笛卡尔积.消除笛卡尔积操作(等值.非等值连接),内连接(隐式连接.显示连接).外连接.自连接 一.笛卡尔积 1.什么是笛卡尔积: 数学上,有两个集合A={a,b},B= ...