gpt4 book ai didi

perl - 如何使用 perl oneliner 遍历多个文件

转载 作者:行者123 更新时间:2023-12-04 23:06:47 25 4
gpt4 key购买 nike

我正在尝试使用 perl liner 在第 4 行向许多 perl 文件添加一行。我正在使用:

 perl -pi -le 'print "     cell_type = pad;" if $. ==4' *.cell.plt

但这只是更改我目录中的第一个文件,而不是所有文件。如何一次在所有文件中插入该行。我尝试了几种方法,但总是失败。请帮忙。谢谢。

最佳答案

您只从一个文件句柄读取,所以只有第 4 行。幸运的是,有一种方法可以重置 $.

perl -i -ple'
print " cell_type = pad;" if $. == 4;
close ARGV if eof;
' *.cell.plt

(注意 eof 不同于 eof()。)

或者,您可以为每个文件执行perl

find -maxdepth 1 -name '*.cell.plt' -type f -exec \
perl -i -ple'print " cell_type = pad;" if $. == 4' {} \;

关于perl - 如何使用 perl oneliner 遍历多个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28997776/

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