#sed
sed是一种流编辑器,
它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响。
处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。
Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。
#命令格式
sed [options] ‘command‘ file(s)
[[email protected] ~]# cat file a b ccc ddd123aaa 123aaa321 ### #asda $ada $ [[email protected] ~]# sed ‘1p‘ file a a b ccc ddd123aaa 123aaa321 ### #asda $ada $ [[email protected] ~]# sed -n ‘1p‘ file a
#分组
[[email protected] ~]# echo -e "I love you.\n" | sed -n ‘s/\(love\)/\1s/p‘ I loves you.
#引用外部变量
[[email protected] ~]# test=hello [[email protected] ~]# echo "hello WORLD" | sed "s/$test/HELLO/g" HELLO WORLD [[email protected] ~]# echo "hello WORLD" | sed ‘s/‘$test‘/HELLO/g‘ HELLO WORLD [[email protected] ~]#
#选定行的范围
[[email protected] ~]# sed -n ‘/^a/,/^1/p‘ file a b ccc ddd123aaa 123aaa321 [[email protected] ~]# sed -n ‘3,/^#/p‘ file ccc ddd123aaa 123aaa321 ###
时间: 2024-12-15 19:01:47