Linux替换文本中的字符、删除每行中前几个字符

学习文章:删除文件每行中前几个字符

替换
1、将old.txt|替换为,,并重定向到new.txt。原文件old.txt不会改变,产生新的文件new.txt

sed 's/|/,/g' old.txt > new.txt

2、将old.txt||替换为(等价于删除文件中的||),原文件old.txt文本内容发生改变。

sed -i 's/|//g' old.txt

删除每行前几个字符
1、^.表示开头1个字符,n个.即表示n个字符。

sed -i 's/^..//g' old.txt  #删除每行前2个字符,old.txt发生改变。不生成新文件。

2、正则表达式

sed 's/^.\{10\}//g' old.txt > new.txt #删除old.txt中每行的前10个字符,重定向到new.txt。old.txt不发生改变

tips:

sed -i 's/|/,/g' xxx.txt #添加-i后,命令会修改原文件,且不可重定向或追加 >  >>
cat old.txt > new.txt #将old.txt内容重定向到new.txt中,即复制一个与old.txt内容相同的new.txt文件。
#若原本无new.txt,则自动生成new.txt。若new.txt已存在,则会发生覆盖
cat old.txt >> new.txt # >> 实现追加功能。打印old.txt中内容追加到new.txt。
#若原本无new.txt,则自动生成new.txt。若new.txt已存在,则新内容会追加到文件尾部
  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值