如果我有一个自定义的Shell脚本或程序,是我自己创建的或从Web上下载的,并且希望能够从CLI执行,那么是否存在将其放置在Linux / Unix目录结构中的标准位置?
/usr/bin ? /usr/local/bin ? /usr/lib ? /usr/sbin ? /bin ? /sbin ? /var ?
我通常将其放在我的〜/ bin文件夹下,并将其放在PATH中,但是看起来并不干净。而且,每次下载新程序时,都必须再次将其放入PATH。
/usr/local/bin专门为此目的而存在,用于系统范围的安装。供您自己私人使用,~/bin是事实上的标准。
/usr/local/bin
~/bin
如果要将每个二进制文件保留在其自己的子目录中,则可以执行此操作,然后将符号链接添加到已存在的目录中PATH。因此,例如
PATH
curl -o $HOME/downloads/fnord http://fnord.example.com/script.exe ln -s $HOME/downloads/fnord $HOME/bin/
提供$HOME/bin在您的中PATH。(有诸如此类的工具stow可以在后台为您提供更多信息)。
$HOME/bin
stow