【发布时间】:2013-04-18 05:28:32
【问题描述】:
我有一个文件有很多行。其中一些以“仅在”开头。所以我只想保留以“Only in”开头的行并删除其余的行。有人可以告诉我我可以使用什么正则表达式命令。
类似“ %s/!(Only in)/rm -rf that line” 抱歉在这里混淆了verilog、unix和perl。有人可以帮助我吗
【问题讨论】:
标签: perl
我有一个文件有很多行。其中一些以“仅在”开头。所以我只想保留以“Only in”开头的行并删除其余的行。有人可以告诉我我可以使用什么正则表达式命令。
类似“ %s/!(Only in)/rm -rf that line” 抱歉在这里混淆了verilog、unix和perl。有人可以帮助我吗
【问题讨论】:
标签: perl
perl -ne 'print if /^Only in /' file
另见grep。
【讨论】:
perldoc -f grep :-)
perl -i -ne '/^Only in/ and print' file
在脚本中:
use strict; use warnings;
$INPLACE_EDIT = 1;
while (<>) {
/^Only in/ and print;
}
这两种解决方案都替换了内联,无需自己创建临时文件。
【讨论】:
or 应该是and。
perl -i -ne '/^Only in/ and print' file