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

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

给所有的输入文件,加上特定的内容

本例中,给所有的输入文件内加入## Copyright xxx

如果检测到已经有## Copyright字样的行,那么不添加,具体代码如下。

可以使用该脚本,给所有的verilog文件,加入`default_nettype none,将所有未声明的signal识别为error

perl 复制代码
#!/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; #将修改后的文件写回
}
  
相关推荐
anlogic3 小时前
Java基础 8.18
java·开发语言
沐知全栈开发4 小时前
WebForms XML 文件详解
开发语言
阿巴~阿巴~5 小时前
冒泡排序算法
c语言·开发语言·算法·排序算法
看到我,请让我去学习6 小时前
QT - QT开发进阶合集
开发语言·qt
weixin_307779136 小时前
VS Code配置MinGW64编译SQLite3库
开发语言·数据库·c++·vscode·算法
励志不掉头发的内向程序员7 小时前
STL库——string(类函数学习)
开发语言·c++
一百天成为python专家7 小时前
Python循环语句 从入门到精通
开发语言·人工智能·python·opencv·支持向量机·计算机视觉
Sunhen_Qiletian7 小时前
朝花夕拾(五)--------Python 中函数、库及接口的详解
开发语言·python
hqwest8 小时前
C#WPF实战出真汁07--【系统设置】--菜品类型设置
开发语言·c#·wpf·grid设计·stackpanel布局
前路不黑暗@8 小时前
C语言:操作符详解(二)
c语言·开发语言·经验分享·笔记·学习·学习方法·visual studio