首页 > 系统相关 >Linux给文件隔两个字符插入-

Linux给文件隔两个字符插入-

时间:2024-04-25 15:44:50浏览次数:26  
标签:字符 每行 插入 sed Linux txt 替换

需求:如下 maclist.txt 文件,每行都是固定个数字符串,现在需要在每行隔两个字符插入一个 -

 

解决方案:

使用sed命令进行插入替换,并将内容重新写入 new.txt 文件中

sed   s/ 是sed替换命令参数,\(.\) 匹配任意一个字符,\1 和 \2 分别引用第一个和第二个括号内匹配的值,- 是要插入的字符,g 表示全局替换

sed  s/ 是sed替换命令参数,.$/ 表示每行末尾最后一个字符,^./ 表示每行行首第一个字符,$ 表示行尾,^ 表示行首,. 表示1个字符,.. 表示2个字符, sed 's/$/del/' 表示在行尾添加 del 字符

cat maclist.txt | sed 's/\(.\)\(.\)/\1\2-/g' | sed 's/.$//' > new.txt

 

标签:字符,每行,插入,sed,Linux,txt,替换
From: https://www.cnblogs.com/xiykj/p/18157852

相关文章

  • linux实现程序唯一性
    在Linux下确保程序唯一运行的方法有很多,以下是一种常见的方法,使用文件锁(也称为互斥锁)。你可以使用 fcntl 库中的 flock 函数来创建一个锁文件。如果程序已经运行,尝试创建同一个锁文件将失败,你可以通过检查这个失败来确定程序是否已在运行。以下是一个简单的C++示例代码,展示......
  • 双向循环链表实现插入、删除和遍历功能接口
    /************************************************************************************filename:004_双向循环链表.c*author:[email protected]*date:2024/04/25*function:设计双向循环链......
  • linux centos8 系统扩容 VMware Centos---VMware ESXi
    linux系统扩容VMwareCentos---VMwareESXi用到的命令df fdisk  pvcreate  pvdisplay   vgdisplay   vgextend   lvdisplay   lvextend  resize2fs01)使用了一段时间虚拟机后发现磁盘不够用了,需要扩容。在客户端操作扩容出现磁盘已成功扩展。......
  • Tomcat调优总结(Tomcat自身优化、Linux内核优化、JVM优化)【转】
    Tomcat自身的调优是针对conf/server.xml中的几个参数的调优设置。首先是对这几个参数的含义要有深刻而清楚的理解。以tomcat8.5为例,讲解参数。同时也得认识到一点,tomcat调优也受制于linux内核。linux内核对tcp连接也有几个参数可以调优。因此我们可以将tomcat调优分为linux内核......
  • 单向循环链表的删除与插入
    单向循环链表单向循环链表是一种数据结构,它在单向链表的基础上进行了扩展。在单向链表中,最后一个节点的指针域为空,即指向NULL。而在单向循环链表中,最后一个节点的指针域不再指向NULL,而是指向链表的头节点,从而形成一个环状的链表结构。单向循环链表有两种主要类型:带头指针的单向......
  • 转载:linux:iowait的含义
    原文:https://blog.pregos.info/wp-content/uploads/2010/09/iowait.txt原文:https://www.kawabangga.com/posts/5903 原文:Whatexactlyis"iowait"?Tosummarizeitinonesentence,'iowait'isthepercentageoftimetheCPUisidleANDtherei......
  • 数据结构:双向循环链表的创建·插入·删除
    数据结构:双向循环链表的创建·插入·删除/***@filename:数据结构:双向循环链表的创建·插入·删除*@brief:实现双向循环链表的创建·插入·删除*@author :[email protected]*@date :2024/04/24*@version:2.0*@note:none*CopyRig......
  • linux系统内存分布图
    目录linux系统内存分布图:1:保留区:2:代码段:3:程序由数据以及指令组成4:数据段:(静态分布区)5:栈:6:内核(kernel):映射到进程虚拟内存,但程序无法访问(不允许用户访问的位置)linux系统内存分布图:linux系统使用的是虚拟内存,不是真是的为物理地址(linux中使用虚拟内存,虚拟内存和物理内存的转......
  • linux centos7 3.10+安装mysql8.0.36
    目录网络源linux操作先搜索有没有安装低版本的mysql5.7或者和mysql冲突的mariadb卸载冲突软件一定要卸载,否则会导致安装mysql失败安装mysql的依赖包,wget,解压源码包时所用的依赖库增加一个mysql的user解压源码包到当前目录给mysql改一个简单的名字编辑/etc下的mysql配置文件my.cnf......
  • 在Linux中,如何创建一个新用户?
    在Linux中创建新用户通常使用useradd命令或adduser命令。这两个命令的功能相似,但adduser命令在某些发行版(如Debian及其衍生版)中更常用,因为它提供了一个更为友好的交互过程,自动处理一些额外的设置,比如创建邮箱、设置密码等。下面是使用这两个命令创建新用户的详细步骤:1.使用user......