你能解释一下为什么 perl 切换 -en
不起作用,但 -ne
工作正常?
$ echo 123|perl -en 'print"$_"'
$ echo 123|perl -ne 'print "$_"'
123
$
您能否提供描述此类行为的文档的链接?
最佳答案
后 -e
必须遵循 perl 代码,但它仅遵循 n
这不是真正的一个类轮,所以 -en
不能像你期望的那样工作。
如果您使用 -w
启用警告它会给你一个提示:
echo 123|perl -wen 'print"$_"'
Unquoted string "n" may clash with future reserved word at -e line 1.
Useless use of a constant in void context at -e line 1.
关于perl - 为什么 perl one liner 输出取决于开关位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19316797/