perl统一修改文件前缀并排序

perl统一修改文件前缀并排序

如题,perl统一修改文件前缀并排序。

举例说明,修改*.txt文件,并排序。

当前目录下,有如下文件

perl 复制代码
a.txt
b.txt
fsjkd.txt
ffsjk_tst.txt

运行rename_prefix脚本后,输入的第一个参数为txt,第二个参数为test,结果如下:

perl 复制代码
test1.txt
test2.txt
test3.txt
test4.txt

rename_prefix脚本的内容如下:

perl 复制代码
#!/bin/perl
use 5.010;

print "Pleast input file suffix which U want to rename!\n";
chomp (my $suffix = <>); # 去除输入参数中的回车符
print "Pleast output file prefix which U want to rename!\n";
chomp (my $prefix = <>); # 去除输入参数中的回车符

my $i;
foreach my $file(glob "*.$suffix") {
  $i += 1;
  my $new_file = $file =~ s/\w*\./$prefix$i./r; # 使用r修饰符,实际上是在替换前先拷贝一份待替换数据,然后在副本上进行替换,所以原始数据不会发生改变
  if (-e $new_file) {
    warn "Cannot rename $file to $new_file: $new_file exists\n";
  } elsif (rename $file => $new_file) {
  } else {
    warn "rename $file to $new_file failed:$!\n";
  }
}
相关推荐
Royzst2 分钟前
一、集合概述(前置基础)
开发语言·windows·python
Season4503 分钟前
C/C++的类型转换
c语言·开发语言·c++
平安的平安5 分钟前
Python大模型Function Calling实战:让AI拥有工具使用能力
开发语言·人工智能·python
xyq20248 分钟前
Vue.js 实例
开发语言
敲代码的瓦龙14 分钟前
Android?碎片!!!
java·开发语言·android-studio
froginwe1115 分钟前
SVG 滤镜:全面解析与高效应用
开发语言
枫叶丹417 分钟前
【HarmonyOS 6.0】Data Augmentation Kit端侧问答模型:本地化智能问答的技术演进
开发语言·华为·harmonyos
醉舞经阁半卷书118 分钟前
LangGraph详解
开发语言·人工智能·python·深度学习·机器学习·自然语言处理
geovindu19 分钟前
go:Condition Variable Pattern
开发语言·后端·设计模式·golang·条件变量模式
时光追逐者21 分钟前
一款基于 C# 开发的 Windows 10/11 系统增强工具,精简、优化、定制一站完成!
开发语言·windows·c#·.net