我应该把我的bash脚本放在哪里
我有一些非常简单的bash脚本,我拼凑起来做我经常做的事情。 其中之一是运行duplicity来执行我的备份任务。 没有什么聪明只是一堆if .. then语句真的。 因为这需要以sudo的forms运行,所以最好将我的脚本放在/ usr / bin(或PATH中的其他位置),chown到root.root和chmod到700?
我将自己的脚本保存在/opt/scripts
。
如果您的脚本应该由每个系统用户执行,则可以创建指向/usr/bin
的符号链接。
如果只有root应该执行脚本,则可以创建指向/usr/sbin
的符号链接。
在/usr/bin/
添加符号链接的命令:
ln -s /opt/scripts/
您可以执行该脚本,因为默认情况下/usr/bin/
在您的PATH中 。
如果您以外没有其他用户使用这些脚本:
然后你可以将它们保存在/home/$USER/bin
。 如果bin
文件夹不存在则创建bin
文件夹并将文件移动到那里。 您家中的bin文件夹将自动添加到PATH环境变量中。 代码在.profile
:
# set PATH so it includes user's private bin if it exists if [ -d "$HOME/bin" ] ; then PATH="$HOME/bin:$PATH" fi
请参阅如何将/ home / username / bin添加到$ PATH?
或者在某些系统中,它可能位于.bashrc
:
export PATH=${HOME}/bin/:${HOME}/.local/bin:${PATH}
谢谢Elder Geek
如果这些脚本将由其他用户使用:
然后/usr/local/bin
或/opt/bin
都是不错的选择。 请参阅是否有放置自定义Linux脚本的标准位置?
希望这可以帮助
我有一个目录,用于快速收集我在/usr/local/apollo
各种计算机上部署的本地工具或东西。 这个目录有分支,用于flags
, bin
和logs
。
对于我在默认apt-get
存储库之外下载和安装的应用程序,应用程序名称放在/opt/
和目录中,并为应用程序的特定版本添加一个子目录。 这样我的vlc
或eclipse
等应用程序的编译版本就不会与分布式版本冲突。
我对/opt
使用是它基本上正式设计的方式。
顺便说一句,目录/usr/local/bin
, /usr/local/apollo
和/opt
在新的操作系统版本安装覆盖中幸存。