Linux常用命令之sed

标题:sed命令的使用

作用:sed是以行为单位处理文本数据,可以对数据按行进行选取(显示)、替换、删除和新增等功能。

一、用法

sed [-nefr] [动作]

参数:

     -n:使用安静模式,取消自动打印模式空间。在一般来自STDIN的数据一般都会被列出到屏幕上,但如果加上-n参数后,则只有经过sed处理的那一行才会被列出来。

         -e:直接在命令行模式上进行sed的动作编辑。

         -f:直接将sed动作写到一个文件内,-f filename可以执行filename内的sed动作

-i:直接修改读的文件内容,而不是由屏幕输出

动作说明:

    1. [n1[n2]] function

       n1,n2一般代表选择进行动作的行数,10,20代表动作在10,20行间执行

         2. function有下面这参数:

     [1] a : 新增

     [2] c : 替换,c后面可以接字符串,这些字符串可以替换n1,n2之间的行

     [3] d: 删除

     [4] i: 插入,i之后可接字符串,这些字符串会在新的一行出现

     [5] p: 打印,通常会和-n一起运行

     [6] s: 替换

二、实例

       例1:以行为单位的删除操作:

       命令:nl test.da | sed ‘2,5d‘

     输出:

例2:在第2行后面添加 "Drink tea\n Drink beer"

     命令: sed ‘2,a Drink tea \n Drink beer‘ test.da

输出:

例3:将第2~5行的内容替换成为"No,2-5 Number"

      命令:sed ‘2,5c No,2-5 Number‘ test.da

输出:

    例4:打印2~5行的内容

    命令:sed -n ‘2,5p‘ test.da

输出:

时间: 2024-08-29 07:46:55

Linux常用命令之sed的相关文章

Linux常用命令之sed(2)

Sed SED的英文全称是 Stream EDitor,它是一个简单而强大的文本解析转换工具,在1973-1974年期间由贝尔实验室的Lee E. McMahon开发,今天,它已经运行在所有的主流操作系统上了. McMahon创建了一个通用的行编辑器,最终变成为了SED.SED的很多语法和特性都借鉴了ed编辑器.设计之初,它就已经支持正则表达式,SED可以从文件中接受类似于管道的输入,也可以接受来自标准输入流的输入. SED由自由软件基金组织(FSF)开发和维护并且随着GNU/Linux进行分发

Linux常用命令:sed

本文记录的是自己在学习<Linux私房菜>中正则表达式的笔记. 关于行尾符$ 如果文件本身没有内容,比如使用touch新建的文件,那么$将会没有意义.例如下面操作: 先使用touch新建了一个test.txt文件,然后尝试使用sed命令去在行尾增加内容,但是没有成功(紧接着的cat命令没有输出任何东西),然后我使用vim给test.txt手动增加了一行内容“add by vim”,然后再使用同样的sed命令就成功了,如后续cat命令输出结果. 命令sed sed是一个十分有用的管道命令,功能很

Linux常用命令大全

系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 cat /proc/cpuinfo 显示CPU info的信息 cat /proc/interrupts 显示中断 cat /proc/meminfo 校验

(转)linux常用命令

原地址:http://www.cnblogs.com/svage/p/3700122.html 1.删除目录及子目录下的 .svn目录 find . -type d -name ".svn" | xargs rm -rf 2./tmp 目录的权限 drwxrwxrwt rwt的意思是:对目录有执行权限,但不能删除,即sticky bit rwx : 可读可写可执行 4+2+1 3.改变群组.用户.权限 chgrp   群组名   改变的目录 groupadd -g gid gname

linux常用命令整理(五):shell基础

大家好,我是会唱歌的程序猿------ 最近在学习linux,闲暇之余就把这些基本的命令进行了整理,希望大家能用的上,整理的的目的是在忘了的时候翻出来看看^?_?^,前后一共分为五个部分: linux基本命令整理(一):常用命令 地址:http://www.cnblogs.com/devinCat/p/7247824.html linux基本命令整理(二):用户.用户组.文件系统和网络 地址:http://www.cnblogs.com/devinCat/p/7247847.html linux

Linux常用命令收集

Linux常用命令:if.for.which.ps.grep.netstat.lsof.head.tail.sed.awk.cut.sort.uniq.dos2unix.find.xargs.kill) 一.linux查看占用内存/cpu最高的进程情况(注明:可以使用一下命令查使用内存最多的10个进程) 1.查看占用cpu最高的进程 ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head 2.查看占用内存最高的进程 ps aux|head -1

linux常用命令技巧

原文地址 这篇文章来源于Quroa的一个问答<What are some time-saving tips that every Linux user should know?>-- Linux用户有哪些应该知道的提高效率的技巧.我觉得挺好的,总结得比较好,把其转过来,并加了一些自己的理解. 首先,我想告诉大家,在Unix/Linux下,最有效率技巧的不是操作图形界面,而是命令行操作,因为命令行意味着自动化.如果你看过<你可能不知道的Shell>以及<28个Unix/Linu

Linux常用命令小结(续)

20. mysql mysql --host=127.0.0.1 --port=3306 --database=test --user=test --password=test --default-character-set=utf8 21. 脚本求两个文件的相同集合 test1   test2 1           2 2           3 3           4 cat test1 test2 | sort | uniq -d (result: 2 3) cat test1 te

Linux常用命令速查备忘

Linux常用命令速查备忘 PS:备忘而已,详细的命令参数说明自己man 一. 启动,关机,登入,登出相关命令 [login] 登录 [logout] 登出 [exit] 登出 [shutdown] 停止系统 [halt] 停止系统 [reboot] 重启动 [poweroff] 切断电源 [sync] 把内存里的内容写入磁盘 [lilo] 安装lilo启动管理程序 [grub] 安装lilo启动管理程序 二. Shell相关命令 [chsh] 切换Shell [history] 显示命令履历