在 Perl 中将 TEXT 前置在文件开头



我想在"input.txt"文件的开头附加文本。这是我的代码

#!/usr/bin/perl
open(FHR,">>input.txt");
seek(FHR,0,0);
print FHR "Appending at beginning of input.txt file";

但是此代码将数据附加到文件末尾。如何修改代码!

你不想追加,你想在前面。它唯一可能的方法是创建一个新文件,写入新内容,然后复制旧文件的其余部分,并将新文件重命名为旧文件的名称。

my $new_filename = 'newfile.txt';
my $old_filename = 'oldfile.txt';
open my $new, '>', $new_filename or die "$new_filename: $!";
open my $old, '<', $old_filename or die "$old_filename: $!";
print {$new} "Prepending at the beginning of the file.n";
print {$new} $_ while <$old>;
close $new;
rename $new_filename, $old_filename or die "rename: $!";

相关内容

  • 没有找到相关文章

最新更新