perl替换文件中的特定内容

perl替换文件中的特定内容

使用该脚本可以替换指定文件的特定内容;

举例:可以将其他脚本中的文件路径替换为你自己需要的目录

perl 复制代码
#!/bin/perl

use strict;

my $in_file = $ARGV[0]; # 输入文件
my $in1 = $ARGV[1]; # 需要替换的特定字符
my $in2 = $ARGV[2]; # 替换后的字符

if (!defined $in_file) { #检测是否有文件输入
  die "Usage: $0 filename";
}
my $out = $in_file;
$out =~ s/(\.\w+)?$/.out/; #将输出文件重命名为xx.out

unless (open IN, "<$in_file") {
  die "Can't open '$in_file':$!"; #检测是否可以打开输入文件
}

unless (open OUT, ">$out") {
  die "Can't write '$out':$!";
}

while (<IN>) {
  s/\b$in1\b/$in2/gm; #\b为定界符,表示只替换$in单词,包含$in的单词不替换;
  print OUT $_;
}
相关推荐
qq_38621899几秒前
Gemini生成的自动搜索和下载论文的python脚本
开发语言·python
o***Z4481 小时前
JavaScript在Node.js中的内存管理
开发语言·javascript·node.js
毕设源码-邱学长1 小时前
【开题答辩全过程】以 基于Java企业人事工资管理系统为例,包含答辩的问题和答案
java·开发语言
颜*鸣&空2 小时前
QT程序实现串口通信案例
开发语言·qt
无限进步_2 小时前
C语言动态内存的二维抽象:用malloc实现灵活的多维数组
c语言·开发语言·数据结构·git·算法·github·visual studio
froginwe113 小时前
Maven 仓库概述
开发语言
二川bro3 小时前
Python在AI领域应用全景:2025趋势与案例
开发语言·人工智能·python
CoderYanger4 小时前
优选算法-队列+宽搜(BFS):72.二叉树的最大宽度
java·开发语言·算法·leetcode·职场和发展·宽度优先·1024程序员节
疏狂难除4 小时前
随便玩玩lldb (二)
开发语言·后端·rust