【发布时间】:2011-04-15 05:50:20
【问题描述】:
我在output.txt 中有所有文件的名称,但在output.txt 文件中没有folderpath。例如,如果filename = test.txt 和它的folderpath=/usr/local/bin 比在output.txt 文件中,我只有filename as test.txt
output.txt 文件有很多filename 的条目,我想做的是:
-
将存在的所有文件
李>output.txt移动到另一个文件夹,例如“/usr/local/test/data/”,所以我的问题是如何使用Perl Script来做到这一点? 使用
folderpath从实际位置删除output.txt文件中存在的所有文件,例如,脚本应首先将test.txt移动到其他文件夹位置,例如@987654337 @并使用文件夹路径信息从其实际位置删除test.txt,即脚本应删除/usr/local/bin/test.txt
任何建议将不胜感激。
更新: 下面的脚本读取 output.txt 文件并获取每个文件的大小以及 output.txt 中存在的所有文件的总大小
my $folderpath = 'the_path';
open my $IN, '<', 'path/to/infile';
my $total;
while (<$IN>) {
chomp;
my $size = -s "$folderpath/$_";
print "$_ => $size\n";
$total += $size;
}
print "Total => $total\n";
输出.txt
2304_2328_Test Data November 19 2003 - Test Tele.xls
2344_2341_Data Dummy Test 12-17.doc
2343_2342_Dummy Test Test 12-17.doc
我的 output.txt 文件中也有一些文件名包含特殊字符,例如,
63551_106640_63551 IBM&#253;Software Delivery&Fulfillment(Div-61) Data IPS 08-20-2010 v3.xlsm
如果您在上面看到文件的编码值为&#253,但我的文件名具有实际的特殊字符符号,因此复制或移动也会考虑我的这个文件并移动文件。
【问题讨论】:
-
你能展示几行你的
output.txt文件,以及你目前的脚本内容吗(如果你已经开始写的话)? -
如果要在unix中引用文件,用"?"在文件名或特殊字符中?