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

perl 给特定文件加上特定内容

perl 给特定文件加上特定内容

给所有的输入文件,加上特定的内容
本例中,给所有的输入文件内加入## Copyright xxx
如果检测到已经有## Copyright字样的行,那么不添加,具体代码如下。
可以使用该脚本,给所有的verilog文件,加入`default_nettype none,将所有未声明的signal识别为error

#!/bin/perl
use strict;
my %do_these; # 声明一个哈希标量;
foreach (@ARGV) {
  $do_these{$_} = 1; #将所有的哈希值都设置为1;
}

while (<>) {
  if (/\A## Copyright/im) { #忽略大小写,多行检查
    delete $do_these{$ARGV}; #检测到特定字符,删除该哈希键值对
    }
}

@ARGV = keys %do_these; # 重新取剩余的哈希键值对,设置为默认数组;

$^I = ".bak"; # 将源文件重命名为xx.bak备份文件,修改后的文件名为原文件;
while( <>) {
  if (/\A#!/) {
    $_ .= "## Copyright (C) 2024 by YOURS AUTHORITY!";
  }
  print; #将修改后的文件写回
}
  

http://www.kler.cn/news/356800.html

相关文章:

  • DBeaver导出数据表结构和数据,导入到另一个环境数据库进行数据更新
  • Java中的equals()和hashCode()方法是如何工作的?
  • opencv学习:人脸识别器特征提取BPHFaceRecognizer_create算法的使用
  • R语言机器学习算法实战系列(三)lightGBM算法+SHAP值(Light Gradient Boosting Machine)
  • 前端知识整理(全屏播放器 CSS JavaScript 轮转播放 jquery库 AJAX 画布 网页测试)
  • Android技术探索:深入解析Android组件
  • #嵌入式笔面经分享#科大讯飞公司嵌入式硬件面经(第1面)
  • MySQL之Buffer Pool缓冲池详解
  • 基于SpringBoot的班级综合测评管理系统
  • 秋招面试题记录_半结构化面试
  • JavaScript 字符串魔法:实用技巧——WEB开发系列45
  • 桃子叶片病害分类检测数据集(猫脸码客 第221期)
  • 沈阳乐晟睿浩科技有限公司:引领抖音小店迈向新纪元
  • npm 中的 package.json 实践
  • [Xshell] Xshell的下载安装使用及连接linux过程 详解(附下载链接)
  • 重学SpringBoot3-Spring WebFlux简介
  • TypeScript 和 JavaScript的区别
  • 空开老化损坏更换
  • three.js 实现一个心形的着色器
  • 【AAOS】Android Automotive 14模拟器源码下载及编译