首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

sed用法详解

编辑指令’ 格式2:sed 选项 ‘编辑指令’ 文件 例:sed -n ‘/^id/p’ /etc/inittab 列出以id开头行 常见命令选项 -n:屏蔽默认输出(全部文本) -i:直接修改文件内容...'/^$/' a.txt 删除重复空行 以上所有动作需要加 -i 替换文本 sed ‘s/xml/XML/’ a.txt 将每行第一个xml替换为XML sed 's/xml/XML/3' a.txt.../' a.txt 将文件每行第一个第二个字符互换 sed -r 's/^(.)(.)(.*)/\2\1\3/' a.txt 将文件每行第一个第二个单词互换 sed -r 's/([a-Z]+...sed -r s/[A-Z]/(&)/g a.txt 2.sed应用案例 a.修改系统默认运行级别 sed -i '/^id:/s/5/3/' /etc/inittab 修改IP地址:将配置文件192.168.1...a.txt 4.sed文本处理 sed文本处理动作 i 行前插入文本:2iYY 在第二行之前插入文本行‘YY’ 4,7iYY 在第4-7行每一行前添加文本 a 行后插入文本:2aYY 在第2

4.2K31

Shell笔记5:sed用法详解

编辑指令’ 格式2:sed 选项 ‘编辑指令’ 文件 例:sed -n ‘/^id/p’ /etc/inittab 列出以id开头行 常见命令选项 -n:屏蔽默认输出(全部文本) -i:直接修改文件内容...'/^$/{n;/^$/d}' a.txt 删除重复空行 以上所有动作需要加 -i 替换文本 sed ‘s/xml/XML/’ a.txt 将每行第一个xml替换为XML sed 's/xml/XML...#an开头注释去掉 删除每行第二个最后一个字符 sed -i 's/.//2;s/.$//' a.txt 删除每行第二个最后一个单词 sed -r 's/[a-Z]+//2;s/[a-Z]+(...[^a-Z]*)$/\1/' a.txt 将文件每行第一个第二个字符互换 sed -r 's/^(.)(.)(.*)/\2\1\3/' a.txt 将文件每行第一个第二个单词互换 sed -...sed -f test.sed  a.txt 4.sed文本处理 sed文本处理动作 i 行前插入文本:2iYY 在第二行之前插入文本行‘YY’ 4,7iYY 在第4-7行每一行前添加文本 a

1.2K10
您找到你想要的搜索结果了吗?
是的
没有找到

《Linux与unix Shell编程指南》 总结

置位,文件属主具有读、写、执行权限,并且文件所属组用户其他用户具有执行权限文件,可以用: $ find ....日志根据项目名日期,按一定格式,输出到指定文件 #使用awk解析date=$datetime接受外部变量,substr($5,0,14)==date变量date不要带$ #-F 分隔符:[]["...在方法1,为了让文本居中每一行前 # 头后头都填充了空格。 在方法2,在居中文本过程只在文本前面填充 # 空格,并且最终这些空格将有一半会被删除。此外每一行后头并未填充空格。.../,/Montana/d' # 删除文件相邻重复行(模拟“uniq”) # 只保留重复第一行,其他行删除 sed '$!...P; D' # 删除文件重复行,不管有无相邻。注意hold space所能支持缓存 # 大小,或者使用GNU sed

5.5K30

技术栈系列基础篇7-linux常见命令

格式:awk 'BEGIN{ commands } pattern{ commands } END{ commands }' filenamesBEGIN语句awk开始从输入流读取行之前被执行,这是一个可选语句...END语句awk从输入流读取完所有的行之后即被执行,比如打印所有行分析结果这类信息汇总都是在END语句完成,它也是一个可选语句。...pattern语句通用命令是最重要部分,它也是可选。如果没有提供pattern语句,则默认执行{ print },即打印每一个读取到行,awk读取每一行都会执行该语句。...AWK 包含两种特殊模式:BEGIN END。...123# 输出以:分隔第二列[root@VM_0_3_centos ~]# awk -F: '{print $2}' awk.text 123234345# 格式化输出(在awkprint语句双引号是被当作拼接符使用

79320

linux常用命令

: 月份 (January..December) %c : 直接显示日期时间 %d : 日 (01..31) %D : 直接显示日期 (mm/dd/yy) %h : 同 %b %j : 一年第几天...(流编辑器) sed叫做流编辑器,在shell脚本Makefile作为过滤一使用非常普遍,也就是把前一个程序输出引入sed输入,经过一系列编辑命令转换成为另一种格式输出。...格式为'行范围s/字符串/新字符串/g' (如果不加g的话,则表示只替换每行第一个匹配串) 1、删除:d命令 sed '2d' huangbo.txt -----删除huangbo.txt...sed -n '2,4p' huangbo.txt ## 打印输出huangbo.txt第2行第4行 sed -n 's/hello/&-hi/gp' huangbo.txt sed 's/^192.168.0.1...同样写法: sed -n '1,10p ' huangbo.txt 5.7、awk(报表生成器) awk是一个强大文本分析工具,相对于grep查找,sed编辑,awk在其对数据分析并生成报告时,

2.1K10

Linux 文本处理三剑客应用

: 使用正则匹配文本日期与时间 # 匹配24小时时间 [root@localhost ~]# cat | grep -E "^[0-23]{2}:[0-59]{2}:[0-59]{2}" 12:00...文本流编辑器 sed是一种流编辑器,它是文本处理中非常工具,能够完美的配合正则表达式使用,sed主要是来进行数据选取,替换,删除,新增命令....-e #允许对输入数据应用多条sed命令编辑 -f #从sed脚本读入sed操作,awk命令-f类似...,格式:"行范围s/字串/新字串/g" #对sed命令我们要知道是,它所有的修改都不会直接修改文件内容,而是在内存中进行处理然后打印到屏幕上 #如果想要写入文件,请使用 sed -i 选项才会保存到文本...字符串替换 sed 's/文本/新文本/g' 进行整行替换 [root@localhost ~]# sed '2s/WR/LyShark/g' lyshark.log ←将第2行,WR替换成

1.2K20

文本三剑客

‐i :直接修改文件内容 查询文本方式 使用行号行号范围 x:行号 x,y:从x行到y行 x,y!...动作说明 常用选项: p:打印匹配行(‐n) =:显示文件行号 a\:指定行号后添加新文本 i\:指定行号前添加新文本 d:删除定位行 c\:用新文本替换定位文本 w filename:写文本到一个文件...*$//g'|sed -n '2p 多点编辑 一条sed命令,删除/etc/passwd第三行到末尾数据,并把bash替换为blueshell [root@localhost ~]# nl /etc/...awk语言最基本功能是在文件或者字符串基于指定规则浏览抽取信息,awk抽取信息后,才能进 行其他文本操作。完整awk脚本通常用来格式化文本文件信息。...~ 匹配,不匹配条件语句 $1~/root/ 匹配第一个字段包含字符 root所有记录 x{m}x{m,}x{m,n} x重复m次x重复至少m次x重复至少m次,但是不超过n次 /(root) {3}

2.3K10

linux中最为常用三大文本(grep,sed,awk)处理工具

1.1 man sed //man 解释 sed - stream editor for filtering and transforming text 用于过滤转换文本流编辑器 2....sed 本身是一个非常复杂工具,有专门书籍讲解 sed 具体用法 作为linux中最为常用三大文本awksed,grep)处理工具之一 2.1 注意-sed 不会直接修改源文件数据 sed...默认不会直接修改源文件数据,而是会将数据复制到缓冲区,修改也仅限于缓冲区数据 3. sed 与 vi 区别 vi 采用是交互式文本编辑模式,你可以用键盘命令来交互性地插入、删除或替换数据文本...处理时,把当前处理行存储在临时缓冲区,成为"模式空间",接着用sed命令处理缓冲区内容,处理完成后,把缓冲区内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。...、函数等,这是它C语言相同之处; 灵活性是awk一大优势。

6K10

linux基础命令大全及使用方法

RAID1磁盘阵列显然是最可靠一种阵列,因为它总是保持一份完整数据备份。它性能自然没有RAID0磁盘阵列那样好,但其数据读取确实单一硬盘来快,因为数据会从两硬盘较快读出。...如写在硬盘1上数据1、3、5、7,写在硬盘2则为数据1、3、5、7,硬盘数据为0、2、4、6,硬盘4数据则为0、2、4、6,因此数据在这四个硬盘上组合成Raid10,且具有raid0raid1...* 所有 -v 取反 grep -v "age" 1.txt 案例: 把文本空行# 删除只留下可执行行 egrep -v "#|^$" 1.txt 2.文件属性 文件属性 文件目录查找命令...|文本|字符串而定义一套规则方法。...正则总结按照功能划分 基本 表示重复 连续重复 ^ 表示重复 连续出现 $ ^$空行 cat -A 取出文件空行或空格行 . a{n,m} \ ?

4.5K10

史上最全 Linux Shell 文本处理工具集锦,快收藏!

、tr、cut、paste、wc、sedawk; 提供例子参数都是最常用最为实用; 对shell脚本使用原则是命令单行书写,尽量不要超过2行; 如果有更为复杂任务需求,还是考虑python...-c '0-9' //获取文件中所有数字cat file | tr -d -c '0-9 ' //删除非数字数据 tr压缩字符 tr -s 压缩文本中出现重复字符;最常用于压缩多余空格 cat...{ statements } ' 工作方式 1.执行begin语句; 2.从文件或stdin读入一行,然后执行statements2,重复这个过程,直到文件全部被读取完毕; 3.执行end语句;...:这个变量包含执行过程当前行文本内容; $1:第一个字段文本内容; $2:第二个字段文本内容; echo -e "line1 f2 f3 line2 line 3" | awk '{print...: seq 10 | awk '{printf "->%4s ", $1}' 迭代文件行、单词字符 1.

4K50

搞定Linux Shell文本处理工具,看完这篇集锦就够了

下面我介绍Linux下使用Shell处理文本时最常用工具: find、grep、xargs、sort、uniq、tr、cut、paste、wc、sedawk; 提供例子参数都是最常用最为实用...cat file | tr -c '0-9' //获取文件中所有数字 cat file | tr -d -c '0-9 \n' //删除非数字数据 tr压缩字符 tr -s 压缩文本中出现重复字符...awk脚本结构 awk ' BEGIN{ statements } statements2 END{ statements } ' 工作方式 1.执行begin语句; 2.从文件或stdin读入一行...,然后执行statements2,重复这个过程,直到文件全部被读取完毕; 3.执行end语句; print 打印当前行 使用不带参数print时,会打印当前行; echo -e "line1\nline2...对输出进行格式化 eg: seq 10 | awk '{printf "->%4s\n", $1}' 12、迭代文件行、单词字符 1.

6.2K41

Linux Shell 文本处理工具集锦

本文将介绍Linux下使用Shell处理文本时最常用工具:find、grep、xargs、sort、uniq、tr、cut、paste、wc、sedawk; 提供例子参数都是最常用最为实用;...' //获取文件中所有数字 cat file | tr -d -c '0-9 \n' //删除非数字数据 tr压缩字符 tr -s 压缩文本中出现重复字符;最常用于压缩多余空格 cat file...:将文本每行内容(PEKSHA) 转换为 PEK/SHA sed 's/^.\{3\}/&\//g' file awk 数据流处理工具 awk脚本结构 awk ' BEGIN{ statements...} statements2 END{ statements } ' 工作方式 1.执行begin语句; 2.从文件或stdin读入一行,然后执行statements2,重复这个过程,直到文件全部被读取完毕...14打印出来 awk '/linux/'#包含linux文本行(可以用正则表达式来指定,超级强大) awk '!

3.2K70

Linux文本处理工具,看这篇就够了。

、tr、cut、paste、wc、sedawk; 提供例子参数都是最常用最为实用; 对shell脚本使用原则是命令单行书写,尽量不要超过2行; 如果有更为复杂任务需求,还是考虑python...-c '0-9' //获取文件中所有数字cat file | tr -d -c '0-9 ' //删除非数字数据 tr压缩字符 tr -s 压缩文本中出现重复字符;最常用于压缩多余空格 cat...{ statements } ' 工作方式 1.执行begin语句; 2.从文件或stdin读入一行,然后执行statements2,重复这个过程,直到文件全部被读取完毕; 3.执行end语句;...:这个变量包含执行过程当前行文本内容; $1:第一个字段文本内容; $2:第二个字段文本内容; echo -e "line1 f2 f3 line2 line 3" | awk '{print...: seq 10 | awk '{printf "->%4s ", $1}' 迭代文件行、单词字符 1.

4.4K10

Linux 基础命令(收藏大全)

4.打印匹配字段行 $sed -n ‘/ftp/p’ install.log 5.默认删除第3行 $sed ‘3d’ install.log 6.默认删除第3行至末尾行 $sed ‘3,$d’ install.log...显示install.log第四行 $awk 'NR==4' install.log 5.打印install.log文件包含data字段行第二区域 $awk ‘/data/ {print $2}’...对test.txt文件重复删除并升序排序 sort -u test.txt 5. 对/etc/shadow文件进行降序排序 sort -r /etc/shadow 6....统计/etc/passwd与/etc/fstab各文件行、字、字节数 wc -lwc /etc/passwd /etc/fstab -------------- 命令:uniq 功能:检查文本重复出现行...-c 显示输出,并在文本行前加出现次数,但如果重复行不连续,则不认为是重 复行 -d 只显示重复行 -u 只显示不重复行 1.

2.1K30

Linux 基础命令(收藏大全)

4.打印匹配字段行 $sed -n ‘/ftp/p’ install.log 5.默认删除第3行 $sed ‘3d’ install.log 6.默认删除第3行至末尾行 $sed ‘3,$d’ install.log...显示install.log第四行 $awk 'NR==4' install.log 5.打印install.log文件包含data字段行第二区域 $awk ‘/data/ {print $2}’...对test.txt文件重复删除并升序排序 sort -u test.txt 5. 对/etc/shadow文件进行降序排序 sort -r /etc/shadow 6....统计/etc/passwd与/etc/fstab各文件行、字、字节数 wc -lwc /etc/passwd /etc/fstab -------------- 命令:uniq 功能:检查文本重复出现行...-c 显示输出,并在文本行前加出现次数,但如果重复行不连续,则不认为是重 复行 -d 只显示重复行 -u 只显示不重复行 1.

1.2K30

Linux 基础命令(收藏大全)

文档时间格式来实现时间 -r 文件名 显示文件最后修改日期 -u 显示utc时间(通用时间) 使用date查看过去/将来时间 1....4.打印匹配字段行 $sed -n ‘/ftp/p’ install.log 5.默认删除第3行 $sed ‘3d’ install.log 6.默认删除第3行至末尾行 $sed ‘3,$d’ install.log...对test.txt文件重复删除并升序排序 sort -u test.txt 5. 对/etc/shadow文件进行降序排序 sort -r /etc/shadow 6....统计/etc/passwd与/etc/fstab各文件行、字、字节数 wc -lwc /etc/passwd /etc/fstab -------------- 命令:uniq 功能:检查文本重复出现行...-c 显示输出,并在文本行前加出现次数,但如果重复行不连续,则不认为是重 复行 -d 只显示重复行 -u 只显示不重复行 1.

1.9K40

Linux之文件管理及文本处理

Bash快捷输入或删除 快捷键: Ctl-U 删除光标到行首所有字符,在某些设置下,删除全行 Ctl-W 删除当前光标到前边最近一个空格之间字符 Ctl-H backspace...下使用Shell处理文本时最常用工具: find、grep、xargs、sort、uniq、tr、cut、paste、wc、sedawk; 提供例子参数都是常用; 3.1. find 文件查找...找出重复行 sort unsort.txt | uniq -d 可指定每行需要比较重复内容:-s 开始位置 -w 比较字符数 3.6....0-9 \n' //删除非数字数据 tr压缩字符 tr -s 压缩文本中出现重复字符;最常用于压缩多余空格: cat file | tr -s ' ' 字符类 tr可用各种字符类...1.执行begin语句; 2.从文件或stdin读入一行,然后执行statements2,重复这个过程,直到文件全部被读取完毕; 3.执行end语句; print 打印当前行

1.7K20

一些linux命令总结。

重复零次或一次 [] 匹配一组任意一个字符 [^] 匹配不在指定组内字符 \ 用来转义元字符 \< 词首定位符(支持vi grep) \<love \> 词尾定位符(支持vi grep) love...-d 删除字符串1 中所有输入字符。 -s 删除所有重复出现字符序列,只保留第一个;即将重复出现字符串压缩为一个字符串。 [a-z] a-z 内字符组成字符串。...sed 命令替换并打印出替换行( -i 改变文本) sed -n -e "{s/文本(正则表达式)/替换文本/p}" 打印并删除正则表达式那部分内容 sed -n -e "{s/^ *[0-9]*/.../p}" 删除含关键一行 sed -i "/^$f/d" a 直接对文本替换 sed -i "s/=/:/" c 找到pearls 开头在行尾加jcui sed -i "/^pearls/s/$/jcui...&\nb/g' 引用外部变量 sed -n ''$a',10p' sed -n ""$a",10p" 取用户家目录(匹配不为/字符匹配:到结尾字符全部删除) sed -n '{s/^[^\/]*/

3.2K10

shell 学习笔记(16)

随机数是可能有重复,因为是随机产生。...30 3 1 * 1 dosomething , 是当1号是周一时候执行吗?不是!是1号,或者周一时候执行。 crontab星期日、月是一个“或”概念,而非“概念。...:42#tp#~> rm -f是不提示不存在文件,rm 默认就是不提示是否删除,加上-i才是提示是否删除 1556.awk精度问题: awk 'BEGIN{print...-n 1 -b|cat -A 1574.巧用gsub查找单词出现次数:awk '{print $1,gsub("id","")}' 1575.脚本手动执行正常,crontab 无法执行:...tar.gz 1589.vim 列模式: 将光标放在需要选择列第一个字符上,在一般模式,按下“Ctrl+v”, 然后使用“↓”或“↑”进行字符选择,选中地方会反白显示

1.4K100
领券