eval ‘exec /usr/bin/perl -wS $0 ${1+“$@“}‘
这几行程序包含了太多的技巧。的确需要很深的功力才能看得懂。首先解释一下,# 打头的行在 shell 中表示该行是注释行,但是如果该脚本具有可执行权限,而直接执行(如 C 的 exec* 系列系统调用,或者 shell 下直接敲脚本名称)的时候,该行起到指示解释器的作用。在本例中,指定解释器是 /usr/bin/perl(假设用户的系统上已经安装了 Perl 并且安装位置就在 /usr/bin/perl 否则该脚本无论如何都是无法执行的)当一个用户拿到脚本时,根据个人习惯和知识水平的不同,可能会有
转载
2020-11-05 10:32:55 ·
390 阅读 ·
0 评论