首页 > 其他分享 >sed利用脚本处理文件

sed利用脚本处理文件

时间:2024-07-28 18:29:05浏览次数:12  
标签:脚本 文件 文本 sed file 字符串 txt

  sed  利用脚本处理文件:

 

 sed  是一个强大的非交互式的流编辑器,它能在命令行下对文本文件进行编辑。

 

基本语法结构:

 sed [选项] '命令' 文件名 

 

常用选项:

 

-  -n :只显示经过  sed  处理后被修改的行。

-  -e :可以同时执行多个编辑命令。

 

编辑命令示例:

 

1. 替换操作:

-  s/旧字符串/新字符串/  :将每行中首次出现的旧字符串替换为新字符串。

-  s/旧字符串/新字符串/g  :将每行中所有的旧字符串替换为新字符串。

- 例如: sed '/apple/orange/g' file.txt  会将文件  file.txt  中所有的  apple  替换为  orange  。

2. 插入和附加操作:

-  i\  :在指定行之前插入文本。

-  a\  :在指定行之后附加文本。

- 例如: sed '2i\This is an inserted line' file.txt  会在文件的第 2 行之前插入指定文本。

3. 删除操作:

-  d  :删除指定的行。

- 例如: sed '3d' file.txt  会删除文件的第 3 行。

 

地址匹配:

可以使用行号、正则表达式等来指定要操作的行。

 

1. 行号:如  1  表示第 1 行, 1,5  表示第 1 行到第 5 行。

2. 正则表达式:例如  /^pattern/  表示匹配以  pattern  开头的行。

 

多行处理:

 sed  还可以处理多行文本。通过  N  命令将下一行读入模式空间,然后进行操作。

 

脚本文件:

可以将一系列的  sed  命令写入一个脚本文件,然后通过  -f  选项来执行该脚本。例如,创建一个名为  script.sed  的文件,内容如下:

 

 

s/old/new/g

/line/d

 

 

然后使用  sed -f script.sed file.txt  来处理文件。

 

标签:脚本,文件,文本,sed,file,字符串,txt
From: https://blog.csdn.net/zhugedali_/article/details/140735836

相关文章

  • 安卓shell 移动某个时间之后的文件到另外一个文件夹 命令记录
    find/storage/emulated/0/DCIM/Camera-maxdepth1-mtime-1-typef-execls-l{}\;  供先测试一下ls-l/storage/emulated/0/DCIM/Camera.new|wc-l 供先测试一下find/storage/emulated/0/DCIM/Camera-maxdepth1-mtime-1-typef-execmv-iv"{}"/stor......
  • Linux文件权限管理
    1.文件权限位说明Linux文件或目录的基本权限位是由九个字符来控制的,每三位字符为一组。前三位是用户权限位中三位表示用户组权限位后三位表示其他用户权限位rwxr-xr-xuser(用户)group(用户组)others(其他用户)代表字符为u代表字符为g代表字符为o2.文件权限详细说明......
  • 【QT】QT 系统相关(事件、文件、多线程、网络、音视频)
    一、Qt事件1、事件介绍事件是应用程序内部或者外部产生的事情或者动作的统称。在Qt中使用一个对象来表示一个事件。所有的Qt事件均继承于抽象类QEvent。事件是由系统或者Qt平台本身在不同的时刻发出的。当用户按下鼠标、敲下键盘,或者是窗口需要重新绘制的时候,都会发......
  • 织梦dedecms数据库连接文件位置
    一、织梦CMS(dedecms)的数据库连接文件位置:织梦CMSV5.1在include\config_base.php织梦CMSV5.3在\data\common.inc.php织梦CMSV5.5在\data\common.inc.php织梦CMSV5.6在\data\common.inc.php织梦CMSV5.7在\data\common.inc.php二、织梦CMS(dedecms)的数据库......
  • SQL Server中非结构化数据的存储神器:文件表的魔力
    SQLServer中非结构化数据的存储神器:文件表的魔力在传统的关系型数据库中,处理非结构化数据(如文本、图片、视频等)通常是一个挑战。SQLServer2012引入了文件表(FileTables)功能,它允许数据库以类似于文件系统的方式存储和管理非结构化数据。本文将详细解释如何在SQLServer中......
  • Python科研武器库 - 文件/路径操作 - 判断路径是否存在
    使用场景:在科研中,用Python处理数据的一个核心目的是批量处理,批量处理节省了研究者大量的时间和精力,不然,还不如手动一个个地去处理。批量处理通常要求数据整体较为规整,能够进行统一的处理操作,但实际数据中总存在一些不规则的样本,甚至有些样本的命名都存在不规范,例如,整个数据集......
  • 如何从 python 脚本将事件和上下文传递到 AWS lambda?
    我正在创建一个cli应用程序,我想用它来调用我的AWSlambda函数:@click.group(context_settings={"help_option_names":["-h","--help"]},invoke_without_command=True)@click.version_option(version=__version__,prog_name="experiment")def......
  • 有没有办法检查是否有人提到@youtubechannelname并使用youtube数据api让Python脚本回
    标题解释了大部分内容。我的问题是,尽管到处搜索,但我没有找到任何有用的解决方案。AI和ChatGPT都无法对此提供帮助。不幸的是,YouTube数据API不提供直接监控频道提及或自动回复评论的功能。YouTube数据API主要用于检索和管理YouTube上的视频、评论和其他资源,而......
  • 虚拟文件系统VFS-片段一
    文件系统类型基于磁盘的文件系统如FAT、EXT4虚拟文件系统如proc网络文件系统顾名思义,网络文件系统还将网络通信封装起来,这意味可以直接通过通信访问另一台设备的文件系统。manfs#查看文件系统,其实这里只是内存中使用的inode,底层介质上的inode内容会更少文件系......
  • 深入浅出WebRTC—LossBasedBweV2
    WebRTC同时使用基于丢包的带宽估计算法和基于延迟的带宽估计算法那,能够实现更加全面和准确的带宽评估和控制。基于丢包的带宽估计算法主要依据网络中的丢包情况来动态调整带宽估计,以适应网络状况的变化。本文主要讲解最新LossBasedBweV2的实现。1.静态结构LossBasedBweV2......