shell入门-sed-1
sed这个工具比grep复杂一点,功能比grep复杂一点
功能也能指定匹配的行,不能颜色显示
sed 基础功能
[root@wangshaojun ~]# sed -n '10'p 1.txt
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
不加-n 第十行出现两遍 p打印的意思
可以指定范围
1到10行
[root@wangshaojun ~]# sed -n '1,10'p 1.txt
....
共10行
从25行到结尾
[root@wangshaojun ~]# sed -n '25,$'p 1.txt
....$
匹配指定关键词root的行
[root@wangshaojun ~]# sed -n '/root/'p 1.txt
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
和egrep的意思一样
一个字符
[root@wangshaojun ~]# sed -n '/r.o/'p 1.txt
.....
0个或多个r
[root@wangshaojun ~]# sed -n '/r*o/'p 1.txt
.....
0个或1个r
[root@wangshaojun ~]# sed -n '/r\?o/'p 1.txt
......
1个或多个r
[root@wangshaojun ~]# sed -n '/r\+o/'p 1.txt
.....
包含root或者nologin的行
[root@wangshaojun ~]# sed -n '/root\|nologin/'p 1.txt
......
匹配1个或多个oo
[root@wangshaojun ~]# sed -n '/\(oo\)\+/'p 1.txt == sed -n -r '/(oo)=/' 1.txt
....
匹配数字开头的行
[root@wangshaojun ~]# sed -r -n '/^[0-9]/'p 1.txt
....
匹配包含数字的
[root@wangshaojun ~]# sed -r -n '/[0-9]/'p 1.txt
....
匹配空行
[root@wangshaojun ~]# sed -r -n '/^$/'p 1.txt
.....
////////////////////////////////////////////////////////////////////////////////////
sed比grep多的功能
不显示空格行
[root@wangshaojun ~]# sed '/^$/'d 1.txt
......
不显示包含数字的行
[root@wangshaojun ~]# sed '/[0-9]/'d 1.txt
(空行)
#$%%^&#@!!?????>>><<:"}{
不显示包含字母的行
[root@wangshaojun ~]# sed '/[a-zA-Z]/'d 1.txt
(空行)
#$%%^&#@!!?????>>><<:"}{
112234556754576543
不显示1到25行
[root@wangshaojun ~]# sed '1,25'd 1.txt
.....$
删除选项
-i
[root@wangshaojun ~]# wc -l 1.txt
31 1.txt
[root@wangshaojun ~]# sed -i '1,29'd 1.txt
[root@wangshaojun ~]# wc -l 1.txt
2 1.txt
///////////////////////////////////////////////////////////////////////////////////////////////
总结:sed和grep的参数基本一样 选项-r去脱意符号 -n只显示指定 -i删除 p打印 d不显示的
shell入门-sed-1的更多相关文章
- Linux shell入门基础(六)
六.Shell脚本编程详解 将上述五部分的内容,串联起来,增加对Shell的了解 01.shell脚本 shell: # #perl #python #php #jsp 不同的脚本执行不同的文本,执行 ...
- linux shell 入门
本文是本人学习linux shell入门收集整理,不完全原创. 参考博文: http://www.cnblogs.com/suyang/archive/2008/05/18/1201990.html ...
- shell 入门学习
目录 shell 入门学习 注释 执行与启动 变量 语法 调试 title: shell 入门学习 date: 2019/7/16 15:47:49 toc: true --- shell 入门学习 ...
- [shell基础]——sed命令
关于sed sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓 ...
- Linux shell入门基础(八)
八.shell脚本sed&awk 01.sed的使用 流编辑器-Steam Editor #ed /etc/passwd 1,10p …… 1s/root/byf/p(替换root为byf) ...
- Linux shell入门基础(一)
Linux shell入门基础(一): 01.增加删除用户: #useradd byf userdel byf(主目录未删除) userdel -r byf 该用户的属性:usermod 用 ...
- Shell - 简明Shell入门
本文以示例和注释的方式,对Shell编程的基本知识点进行了总结和回顾,所有脚本均已做了基本的调试和验证. Shell - 简明Shell入门 01 - 第一个脚本 脚本的定义.执行方法以及echo命令 ...
- Linux shell利用sed如何批量更改文件名详解[转载]
需求背景: 目录A用来存放自动化的包生成的apk文件,现在开发修改了包名的 命名规则:环境名称(pro|uat)-release-日期-v版本号.apk 原来的是思路是通过正则表达式匹配新的包名,但 ...
- shell中sed的简单使用
sed命令行格式为: sed [-nefri] ‘command’ 输入文本/文件 常用选项: -n∶取消默认的输出,使用安静(silent)模式.在一 ...
- Shell入门02
Shell入门-02 1.重定向 标准输入(<) 标准输出 标准错误重回定向 程序 = 指令 + 数据 命令 变量 在程序中,数据如何输入?又如何输出? 数据输入:键盘 – 标准输入,但是并 ...
随机推荐
- 读取ByteBuffer有效的数据
转:https://zhidao.baidu.com/question/427134449349230532.html说道 ByteBuffer的缓冲区,就需要知道缓冲区的的三个状态1)capacit ...
- eclipse InvocationTargetException 错误解决
1.今天做一个推送的,用到了几个jar包,直接以User Library的形式加进 在单元测试中,测试的很好,没有任何问题, 但是在action中测试,一测试就崩. 跟踪以后出现InvocationT ...
- python-2 什么是函数
函数是什么? 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 特性: 减少重复代码 使程序变的可扩展 使程序变得易维护 形参变量只有在被调用时才 ...
- linux多个分区合并为一个分区
备份# rsync -avP -e ssh /data xxx卸载# umount /data /data?设置分区类型为8e# fdisk /dev/sdb 创建PV# pvcreate /dev/ ...
- LeetCode:三个数的最大乘积【628】
LeetCode:三个数的最大乘积[628] 题目描述 给定一个整型数组,在数组中找出由三个数组成的最大乘积,并输出这个乘积. 示例 1: 输入: [1,2,3] 输出: 6 示例 2: 输入: [1 ...
- DNS 原理入门 (转)
DNS 是互联网核心协议之一.不管是上网浏览,还是编程开发,都需要了解一点它的知识. 本文详细介绍DNS的原理,以及如何运用工具软件观察它的运作.我的目标是,读完此文后,你就能完全理解DNS. 一.D ...
- 每天一个Linux命令(24)tar命令
tar命令可以为linux的文件和目录创建档案. (1)用法: 用法: tar [选项] [文件参数] (2)功能: 功能: 用来压缩和解压文件.tar本身不 ...
- 模块化(CommonJs、AMD、CMD、UMD)发展历史与优缺点
全文主要整理自摘自<Webpack中文指南>(好文,建议直接去看,以下仅对该系列文章中的<历史发展>篇幅进行备份——也整理了点其他内容) 模块化 模块化是老生常谈了,这里不做阐 ...
- [原创]java WEB学习笔记18:java EE 中的MVC 设计模式(理论)
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- PyVim
PyVim主要用于连接到 Service Instance import atexit from pyVim import connect // Connect to Server If args.d ...