当前位置: 首页 > news >正文

通过perl或awk实现剪切功能

我有如下文件,我想将第二行的数据,移动到文件的最后一行,如何实现?

# cat 1.txt 
open LOG,">>./a.log";
print LOG  "hahh,adfa,adfad";
close LOG;

这里我给出了两种方式:AWK和perl语言

# cat 1.txt |awk '/print/{a=1}/print/&&a{b=$0}END{print b}{if(!/print/)print $0}'
open LOG,">>./a.log";
close LOG;
print LOG  "hahh,adfa,adfad";
# cat 1.txt |perl -ne 'if(/print/){$a=$_}END{print $a};if(!/print/){print $_}'
open LOG,">>./a.log";
close LOG;
print LOG  "hahh,adfa,adfad";

上述代码结构简单进行解释:awk解析和perl一致,这里仅介绍perl
if(/print/){$a=$}:代表如果匹配到print,那么就将这行数据存储放到变量$a中
END{print $a};if(!/print/){print $
}:这里其实是两部分
● 首先会先执行print $_且内容不包含print关键字,即每行数据循环到就会打印
● END{print $a}:代表所有的循环结束后,再打印一次变量$a

http://www.hskmm.com/?act=detail&tid=14521

相关文章:

  • java列队多种实现方式,
  • Ashampoo Music Studio 12.0.3 音频编辑处理
  • Gitee:本土化代码托管平台如何重塑中国开发者协作生态
  • WEB项目引入druid监控配置
  • Computer Graphics Tutorial
  • CF1874(CF Round 901) 总结
  • 2. Spring AI 快速入门使用 - Rainbow
  • PyCharm 2025.1安装包下载与安装教程
  • 阿里将发布多模态模型 Qwen3-Omni,主打多语言与复杂推理;DeepvBrowser 上线 AI 语音浏览器丨日报
  • Word文档内容批量替换脚本 - wanghongwei
  • VMware ESXi 磁盘置备类型详解
  • EF 数据迁移生成sql脚本
  • HWiNFO 硬件信息检测工具下载与安装教程
  • 第七章 手写数字识别V1
  • 西电PCB设计指南1~2章学习笔记
  • 1. 大模型的选择详细分析 - Rainbow
  • 云计算实践部署笔记
  • [eJOI 2024] 奶酪交易 / Cheese
  • 逆向分析之switch语句
  • 批量查询设计桩号方法及文件格式
  • 搭建Python的运行开发环境
  • 【HBase 原理部署安装 01】
  • 打破数据壁垒,DMS Data Agent 开启智能分析之旅
  • Ruby IPAddr正则表达式拒绝服务漏洞分析与修复
  • 模型驱动的 AI Agent架构:亚马逊云科技的Strands框架技术深度解析
  • cache支持的软件操作
  • PHP 静态分析工具实战 PHPStan 和 Psalm 完全指南
  • tests-stats/regression.sh
  • 光隔离探头技术解析:高电压测量的安全革命​​
  • freertos.c解析 - 教程