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; #将修改后的文件写回
}
  
相关推荐
是jin奥3 分钟前
Golang 逃逸分析(Escape Analysis)理解与实践篇
开发语言·后端·golang
qq_4663024518 分钟前
Qt窗体ui如何设置中英文翻译?
开发语言·qt·ui
python百炼成钢22 分钟前
day01-Qt5入门
开发语言·qt
llleo081523 分钟前
10.11 Qt
开发语言·qt
内有小猪卖23 分钟前
tcl/perl 脚本命令学习
开发语言·学习·perl
yngsqq31 分钟前
016集——c# 实现CAD类库 与窗体的交互(CAD—C#二次开发入门)
开发语言·c#
YMY哈38 分钟前
JVM内存区域
java·开发语言·jvm
Amor风信子39 分钟前
华为OD机试真题---TLV解码
java·开发语言·数据结构·算法·华为od
Y星球一号42 分钟前
若依框架生成多个sheet的Excel方法
java·开发语言·excel
psjasf13141 小时前
Java基础知识全面总结(第四章-static关键字)
java·开发语言