假设我有一个Perl脚本,即mytest.pl.我可以用类似的东西来运行它cat mytest.pl | perl -e
吗?
我想这样做的原因是我有一个加密的perl脚本,我可以在我的c程序中解密它,我想在我的c程序中运行它.由于存在安全问题,我不想将解密的脚本写回硬盘,所以我需要在内存中运行这个perl脚本.
这个问题与cat
命令无关,我只想知道如何将perl脚本提供给stdin,并让perl解释器运行它.
perl < mytest.pl
Run Code Online (Sandbox Code Playgroud)
应该在任何shell中做到这一点.它调用perl并通过shell重定向操作符提供脚本<
.
但正如所指出的那样,似乎有点不必要.为什么不用脚本启动脚本
#!/usr/bin/perl
Run Code Online (Sandbox Code Playgroud)
也许
#!/usr/bin/env perl
Run Code Online (Sandbox Code Playgroud)
?(经过修改以反映您的Perl
和/或env
路径)
注意无用的猫奖.每当我使用时,cat
我会停下来思考shell是否可以为我提供此功能.