gpt4 book ai didi

linux - 尝试创建一个 perl 脚本来删除从 10 到文件末尾的行

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:59:23 25 4
gpt4 key购买 nike

我正在尝试创建一个 Perl 脚本来使用 vim 删除文件中的行。我想自动执行此任务,因为我必须一遍又一遍地删除这些行。这是我到目前为止编写的脚本,但它不起作用。

#!/usr/bin/perl 
my $PROG = 'hwdr';
my $PERS = "/u/blh/scripts/70-persistent-net.rules";
open (IN, $PERS) || die "Cannot open file".$PERS."for read";
@lines = <IN>;
close IN;

open (OUT, ">", $PERS) || die "Cannot open file. Please run as root".$PERS."for write";
foreach $line (@lines)
{
$line =~ 8,10d ;
print OUT $line;
}

close OUT;

感谢您的帮助

最佳答案

使用 $. 跟踪行号:

while (<IN>) {
last if $. > 10;
print;
}

或者使用就地编辑的单行版本:

perl -pi -e '$. > 10 && exit;' /u/blh/scripts/70-persistent-net.rules

关于linux - 尝试创建一个 perl 脚本来删除从 10 到文件末尾的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19933360/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com