我有这个perl脚本,我需要分发给想要在unix环境中的任何地方运行脚本的同事.我能做些什么才能让他们轻松运行这个PERL脚本?例如,他们可以在目录中的某个位置放置PERL脚本,然后只运行输入
./xyz.pl ttt.conf
Run Code Online (Sandbox Code Playgroud)
没有声明路径(如/home/abc/bin/ddd/xyz.pl ttt.conf).
我以前的方式是在您的主目录中添加一个"bin"目录,并将其添加到$PATH变量..然后您可以将要使用的任何脚本添加到该目录.
我不再熟悉确切的语法,但是类似于:
在.bashrc中:
$PATH = ( $PATH , $HOME/bin )
Run Code Online (Sandbox Code Playgroud)
然后将脚本放入/home/user/bin(假设$ HOME ==/home/user).当你重新加载shell时,它将像任何正常的命令/程序一样可用.
ETA:请参阅下面关于语法的罗伯特评论.此外,为了让您的同事使用您的脚本,您可以简单地使用硬编码路径,例如/home/patrick/bin.
我使用的技术是:
#!/usr/bin/env perl
Run Code Online (Sandbox Code Playgroud)
这是让命令解释器找到 Perl 的常用方法,而无需 (a) 移动文件,或 (b) 在 shebang 中声明 Perl 的显式路径。
它在可移植性下提到:http : //en.wikipedia.org/wiki/Shebang_(Unix )