给定一个程序实用程序从stdin获取命令并返回一个有用的退出代码,这个perl语法有效:
my $result = `utility -switch1 -switch2 <<HERE
set ridin_round_the_world TRUE;
do this;
sign that;
try {
make some_girl;
return 0;
}
except {
sleep --week;
exit 1;
}
HERE`;
print "result is $result\n";
Run Code Online (Sandbox Code Playgroud)
所谓"作品",我指的是perl脚本启动该实用程序,管道在命令列表,等到实用程序退出,并返回结果.
但为什么它有效呢?反引号如何知道调用程序,然后在HERE文档中输入管道?我对perl实现感到幸运,还是这种标准行为?
这是shell的here-doc,而不是Perl的.尝试在shell中运行:
% cat <<EOF
some
thing
EOF
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
952 次 |
| 最近记录: |