解释这个awk命令

解释这个awk命令,awk,Awk,请解释此awk命令的具体功能: awk '$0!~/^$/{print $0}' 它打印非空的输入行。注意:“空”在这种情况下并不意味着“空白”。它打印非空的输入行。注意:“Empty”在这种情况下并不意味着“blank”。它删除了空行。条件是$0(整行)不匹配~regexp/^$/(行首紧跟行尾) 类似于grep-v'^$'它删除了空行。条件是$0(整行)不匹配~regexp/^$/(行首紧跟行尾) 类似于grep-v'^$'首先使其可读 echo '$0!~/^$/{print $0}'

请解释此
awk
命令的具体功能:

awk '$0!~/^$/{print $0}'

它打印非空的输入行。注意:“空”在这种情况下并不意味着“空白”。

它打印非空的输入行。注意:“Empty”在这种情况下并不意味着“blank”。

它删除了空行。条件是
$0
(整行)不匹配
~regexp
/^$/
(行首紧跟行尾)


类似于
grep-v'^$'

它删除了空行。条件是
$0
(整行)不匹配
~regexp
/^$/
(行首紧跟行尾)


类似于
grep-v'^$'

首先使其可读

echo '$0!~/^$/{print $0}' | a2p ==> $, = ' '; $\ = "\n"; while (<>) { chomp; if ($_ !~ /^$/) { print $_; } } 回音:0美元~/^$/{打印$0}'| a2p ==> $, = ' '; $\=“\n”; 而(){ 咀嚼; 如果($\!~/^$/){ 打印美元; } }
和翻译。在这种情况下,不要打印空行。

首先使其可读

echo '$0!~/^$/{print $0}' | a2p ==> $, = ' '; $\ = "\n"; while (<>) { chomp; if ($_ !~ /^$/) { print $_; } } 回音:0美元~/^$/{打印$0}'| a2p ==> $, = ' '; $\=“\n”; 而(){ 咀嚼; 如果($\!~/^$/){ 打印美元; } }
和翻译。在这种情况下,不要打印空行。

您的示例可以简单地改写为:

awk '!/^$/'


您的示例可以简单地改写为:

awk '!/^$/'


正如本·杰克逊和其他人所说,它完全删除了空行。不是有一个或多个空格的,而是零字符长的。我们永远也不会知道这是否是我们想要的行为

我想说的是,代码至少是冗余的,如果不是三重冗余的话,这取决于它的用途

它所做的是,如果输入行不是空行,则将输入行打印到输出

由于awk的标准行为是,如果满足没有以下程序块的条件,则打印输入行,这就足够了:

awk '$0!~/^$/' or even shorter awk '$0!=""'
如果您可以确定,没有一行会被解析为零,即使是一个

awk'$0'

能做到这一点。

就像本·杰克逊和其他人说的那样,它完全消除了空行。不是有一个或多个空格的,而是零字符长的。我们永远也不会知道这是否是我们想要的行为

我想说的是,代码至少是冗余的,如果不是三重冗余的话,这取决于它的用途

它所做的是,如果输入行不是空行,则将输入行打印到输出

由于awk的标准行为是,如果满足没有以下程序块的条件,则打印输入行,这就足够了:

awk '$0!~/^$/' or even shorter awk '$0!=""'
如果您可以确定,没有一行会被解析为零,即使是一个

awk'$0'
我能做到这一点。

-1。我喜欢Perl,但“可读性”在旁观者眼里。
$比
$0
好吗?我认为这个答案没有多大帮助。我喜欢Perl,但“可读性”在旁观者眼里。
$比
$0
好吗?我认为这个答案没有多大帮助。