seddog站长之家(sed删除怎么生效)

本文目录
sed删除怎么生效
sed 是一种几乎可以应用在所有 UNIX 平台(包括 Linux)上的轻量级流器。sed 有许多很好的特性。首先,它相当小巧,通常要比你所喜爱的脚本语言小多倍。其次,因为 sed 是一种流器,所以,它可以对从如管道这样的标准输入中接收的数据进行。因此,无须将要的数据存储在磁盘上的文件中。因为可以轻易将数据管道输出到 sed,所以,将 sed 用作强大的 Shell 脚本中长而复杂的管道很容易。
sed 主要是用来将数据进行选取、替换、删除、新増的命令。我们看看命令的语法:
’ 文件名
选项:
-n:一般 sed 命令会把所有数据都输出到屏幕上。如果加入此选项,则只会把经过 sed 命令处理的行输出到屏幕上;
-e: 允许对输入数据应用多条 sed 命令;
-f 脚本文件名:从 sed 脚本中读入 sed 操作。和 awk 命令的 -f 选项非常类似;
-r:在 sed 中支持扩展正则表达式;
-i:用 sed 的修改结果直接修改读取数据的文件,而不是由屏幕输出动作;
a \:追加,在当前行后添加一行或多行。当添加多行时,除最后一行外,每行末尾需要用“\”代表数据未完结;
c \:行替换,用c后面的字符串替换原数据行。当替换多行时,除最后一行外,每行末尾需用“\”代表数据未完结;
i \:插入,在当前行前插入一行或多行。当插入多行时,除最后一行外,每行末尾需要用“\”代表数据未完结;
d:删除,删除指定的行;
P:打印,输出指定的行;
s:字符串替换,用一个字符串替换另一个字符串。格式为“行范围s/旧字串/新字串/g”(和Vim中的替换格式类似);
大家需要注意,sed 所做的修改并不会直接改变文件的内容(如果是用管道符接收的命令的输出,则连文件都没有),而是把修改结果只显示到屏幕上,除非使用"-i"选项才会直接修改文件。
行数据操作
举几个例子来看看 sed 命令到底是干什么的。假设我想查看一下 student.txt 文件的第二行,就可以利用"p"动作了。
# sed ’2p’ student.txt
ID Name PHP Linux MySQL Average
1 Liming 82 95 86 87.66
1 Liming 82 95 86 87.66
2 Sc 74 96 87 85.66
3 Gao 99 83 93 91.66
好像看着不怎么顺眼啊!"p"动作确实输出了第二行数据,但是 sed 命令还会把所有数据都输出一次,这时就会看到这个比较奇怪的结果。那如果我想指定输出某行数据,就需要"-n"选项的帮助了。
# sed -n ’2p’ student.txt
1 Liming 82 95 86 87.66
这样才可以输出指定的行。大家可以这样记忆:当我们需要输出指定的行时,需要把"-n"选项和"p"动作一起使用。
再来看看如何删除文件中的数据:
#sed ’2,4d’ student.txt
#删除从第二行到第四行的数据
ID Name PHP Linux MySQL Average
# cat student.txt
#文件本身并没有被修改
ID Name PHP Linux MySQL Average
1 Liming 82 95 86 87.66
2 Sc 74 96 87 85.66
3 Gao 99 83 93 91.66
看到这条命令首先需要注意,所有的动作必须使用"单引号"包含;其次,在动作中可以使用数字代表行号,逗号代表连续的行范围。还可以使用"$"代表最后一行,如果动作是"2,$d",则代表从第二行删除到最后一行。
再来看看如何追加和插入行数据:
# sed ’2a hello’ student.txt
#在第二行后加入hello
ID Name PHP Linux MySQL Average
1 Liming 82 95 86 87.66
hello
2 Sc 74 96 87 85.66
3 Gao 99 83 93 91.66
"a"动作会在指定行后追加数据。如果想要在指定行前插入数据,则需要使用"i"动作。
# sed ’2i hello 》 world’ student.txt
#在第二行前插入两行数据
ID Name PHP Linux MySQL Average
hello
world
1 Liming 82 95 86 87.66
2 Sc 74 96 87 85.66
3 Gao 99 83 93 91.66
如果想追加或插入多行数据,则除最后一行外,每行的末尾都要加入"\"代表数据未完结。
再来看看"-n"选项的作用,命令如下:
# sed -n’2i hello \
#只查看sed命令操作的面
world’ student.txt
hello
world
看到了吧,"-n"只用于查看 sed 命令操作的数据,而并非查看所有的数据。
再来看看如何实现行数据替换:
# cat student.txt | sed ’2c No such person’
ID Name PHP Linux MySQL Average
No such person
2 Sc 74 96 87 85.66
3 Gao 99 83 93 91.66
第二行数据变成了 "查无此人"。通过这个例子我们看到了,sed 也可以接收和处理管道符传输的数据。
sed 命令在默认情况是不会修改文件内容的。如果我确定需要让 sed 命令直接处理文件的内容,则可以使用"-i"选项。不过要小心,这样非常容易误操作,在操作系统文件时请小心谨慎。可以使用这样的命令:
# sed -i’2c No such person’ student.txt
字符串替换
"c"动作是进行整行替换的,如果仅仅想替换行中的部分数据,就要使用"s"动作了。"s"动作的格式如下:
# sed’s/旧字符串/新字符串/g’ 文件名
替换的格式和 Vim 非常类似,例如:
# sed ’3s/74/99/g’ student.txt
#在第三行中,把74换成99
ID Name PHP Linux MySQL Average
1 Liming 82 95 86 87.66
2 Sc 99 96 87 85.66
3 Gao 99 83 93 91.66
如果想把某行的成绩注释掉,让它不再生效,则可以这样做:
#sed ’4s/^/#/g’ student.txt
#在这里使用正则表达式,"^"代表行首
ID Name PHP Linux MySQL Average
1 Liming 82 95 86 87.66
2 Sc 74 96 87 85.66
#3 Gao 99 83 93 91.66
不仅如此,我们还可以这样做:
# sed -e ’s/Liming//g; s/Gao//g’ student.txt
#同时把"Liming"和"Gao"替换为空
ID Name PHP Linux MySQL Average
1 82 95 86 87.66
2 Sc 74 96 87 85.66
3 99 83 93 91.66
"-e"选项可以同时执行多个 sed 动作,当然,如果只执行一个动作,则也可以使用"-e"选项,但是这时没有什么意义。还要注意,多个动作之间要用";"或回车分隔,例如,上一条命令也可以这样写:
# sed -e ’s/Liming//g
》 s/Gao//g’ student.txt
ID Name PHP Linux MySQL Average
1 82 95 86 87.66
2 Sc 74 96 87 85.66
3 99 83 93 91.66
关注公众号「站长严长生」,在手机上阅读所有教程,随时随地都能学习。本公众号由C语言中文网站长亲自运营,长期更新,坚持原创。
优秀文章
C语言格式化输出
C语言求回文素数
C++虚函数注意事项以及构成多态的条件
MySQL数据库恢复(LOAD DATA)
C语言学生信息管理系统源码下载和思路解析(密码版)
Servlet虚拟路径匹配规则
如何避免线程发生死锁?
MyBatis where标签
Hibernate增删改查操作(CRUD)
PCB是什么
labrador retriever中文翻译
Labrador retrievers are the most popular breed in north america
拉布拉多在北美是最受欢迎的狗狗品种。
Originally used to help fishermen bring in their s , labrador retrievers love exercise and water
拉布拉多最初是帮助渔夫拉鱼网,所以?们可是很喜欢活动及玩水的喔。
More labrador retrievers were pcensed than any other breed , followed by pit bulls , shih tzus and german shepherds
纯种狗中以拉布拉多寻物猎犬居多,其次是美洲斗牛犬西施犬和德国牧羊犬。
More labrador retrievers were pcensed than any other breed , followed by pit bulls , shih tzus and german shepherds
纯种狗中以拉布拉多寻物猎犬居多,其次是美洲斗牛犬、西施犬和德国牧羊犬。
The labrador retriever was developed in england in the mid 1800s by a handful of private kennels dedicated to developing and refining the perfect gundog
拉拉最早从18世纪中页在英国由一部分致力于培育优良猎犬的人努力发展起来的。
Other popular breeds that e in different types include labrador retrievers , cocker spaniels , jack russell terriers , pomeranians , and many more
还有一些大众喜爱的犬种也有不同的类型之分,包括拉不拉多犬,可卡,杰克拉赛尔、博美等。
Quill - a labrador retriever - s pfe as a dog drastically changed when he was chosen and forced to leave his mother for a seeing - eye dog training . .
相对其他的兄弟姊? ,小q确是与别不同,他身上有个特别的胎记-像小鸟展翅的记号,因此他的养父母给他改名为. .
Additionally , some breeds of dogs such as the labrador retriever and golden retriever may be at additional risk to a fatal kidney disease ( lyme nephritis ) associated with lyme infection
并且,一些品种的狗象拉不拉多和金毛巡回猎犬更容易感染和莱姆关节炎并发的致命的肾炎(莱姆肾炎) 。
The motion picture association of america on thursday unveiled its latest tool in the war on movie piracy : a pair of dvd - sniffing labrador retrievers named lucky and flo
上周四,美国电影联合会公布了反盗版战争中的最新“武器” :两只能够嗅出dvd光盤、分别名为“拉基”和“弗洛”的拉布拉多猎犬。
On tuesday the o black labrador retrievers spearheaded a raid in the southern city of johor baruthat resulted in the seizure of around three milpon dollars worth of illegally copied movies
星期二,这两条拉布拉多猎犬做为先头部队被派到柔佛州的南部城市搜查,导致价值大约30亿的非法电影拷贝被查封。
Los angeles reuters - this time , hollywood really has gone to the dogs . the motion picture association of america on thursday unveiled its latest tool in the war on movie piracy : a pair of dvd - sniffing labrador retrievers named lucky and flo
上周四,美国电影联合会公布了反盗版战争中的最新“武器” :两只能够嗅出dvd光盤分别名为“拉基”和“弗洛”的拉布拉多猎犬。
But " school - aged children can be trained successfully in precautionary behavior when approaching a dog , " concluded the study from the department of pediatric surgery at the medical university of graz . the researchers said they found that the relative risk of being bitten by a german shepherd or a doberman was about five times higher than for a labrador retriever or a mixed breed
奥地利儿科专家最近警告说,父母应当等孩子到达上学年龄后再给孩子买狗,而且就算孩子已经到了学龄,如果你想买的是一只德国猎犬或是德国牧羊犬的话,最好还是再考虑考虑,因为这些大型狗很有可能会攻击你的孩子。
Cantonese voice talents : gigi leung , tony leung , yun siu yee and lam hiu fong quill - a labrador retriever - s pfe as a dog drastically changed when he was chosen and forced to leave his mother for a seeing - eye dog training center . pttle did he know that he would later meet a strange man who would bee his owner partner
相对其他的兄弟姊? ,小q确是与别不同,他身上有个特别的胎记-像小鸟展翅的记号,因此他的养父母给他改名为小q即鸟的羽翼的意思.小q不久就被挑选成导盲犬,正式展开犬只训练中心的艰辛生活。
seddog里面的用户会员可以注册吗
seddog里面的用户会员可以注册。
会员,指某些团体或组织的成员,通过正式手续加入某个会社或专业组织的人。

更多文章:
枣庄新站如何利用总结模板快速排名:枣庄网站建设总结模板怎么快速提升新站排名
2026年10月23日 03:57
四川展示网站建设优化怎么做:如何有效进行四川展示网站建设优化
2026年10月23日 03:56








