You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Perl脚本如何自动读取/tmp目录下每日生成的带日期CSV输入文件

实现方案

你可以通过文件匹配+时间排序的方式自动获取目标文件,无需硬编码文件名,以下是两种常用场景的实现:


方案1:自动读取/tmp目录下最新生成的sessions_record文件(绝大多数场景适用)

直接替换你脚本中硬编码$inputfile的那一行即可:

# 匹配/tmp目录下所有符合命名规则的csv文件
my @csv_files = glob "/tmp/sessions_record_*.csv";
# 无匹配文件时直接抛出明确错误,避免后续逻辑报错
die "未在/tmp目录下找到符合规则的sessions_record文件" unless @csv_files;
# 按文件修改时间倒序排序,取最新的第一个文件作为输入
my $inputfile = (sort { (stat($b))[9] <=> (stat($a))[9] } @csv_files)[0];

方案2:自动读取当天生成的sessions_record文件

如果你的需求是固定读取当日生成的文件,可以增加日期过滤规则:

# 生成和文件名格式一致的当日日期字符串
my $today = strftime "%Y-%m-%d", localtime;
# 匹配当天生成的所有符合规则的文件
my @csv_files = glob "/tmp/sessions_record_${today}_*.csv";
die "未在/tmp目录下找到当日生成的sessions_record文件" unless @csv_files;
# 当日存在多个文件时取最新的
my $inputfile = (sort { (stat($b))[9] <=> (stat($a))[9] } @csv_files)[0];

以上两种方案都不需要修改你原有脚本的其他业务逻辑,依赖的函数都是Perl内置或你已经引入的模块提供的,无需额外安装依赖。

内容的提问来源于stack exchange,提问作者Ayad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 16:39:00