我想下载一个可执行文件并一步执行它,同时向该可执行文件提供参数。
我设法弄清楚如何使用管道来下载并执行:
wget -O - http://xrl.us/cpanm | perl
这将cpanm
通过 执行可执行文件perl
。
现在我想添加一个参数,例如A
:
wget -O - http://xrl.us/cpanm | perl A
这不再起作用。我现在得到的是Cannot write to ‘-’ (Success).
。
如何才能做到这一点?
答案1
你可以放perl脚本参数,programname
在本例中后面是标准输入 ( -
)。所以,我认为,这就是你要问的:
wget -O - http://xrl.us/cpanm | perl -- - A
或者
wget -O - http://xrl.us/cpanm | perl -- - --help
看:perlrun 手册页更多细节。
笔记:从手册页:
“--” 表示选项结束并禁用进一步的选项处理。“--” 后面的任何参数都被视为文件名和参数。
换句话说,--
终止perl参数。之后我们输入包含脚本的文件名(在我们的例子中,这是标准输入,用 表示-
),然后输入脚本的参数。