存储外部程序并使其可执行的正确方法?

存储外部程序并使其可执行的正确方法?

我下载了 CLI 客户端哈巴什用于习惯/常规游戏化项目哈巴蒂卡网站。在里面Habash 的 Fandom wiki据说,我需要设置环境变量。另外,我想让程序 habash 成为一个普通的 CLI 程序,这样我就不必通过完整路径调用它。我现在描述一下我一直在做的事情。我做了以下事情。

  • 之后declare -x HABITICA_UUID=[myUserID]我在 ~/.bashrc 中没有找到任何条目。有人知道为什么吗?
  • 因此,我在 ~/.bashrc 的顶部添加了 HABITICA_UUID 和 HABITICA_TOKEN (并为自己做了评论)
  • chmod 600 ~/.bashrc因为UUID和TOKEN被视为PW。
  • sudo mv ./habash /opt
  • sudo ln -s /opt/habash/habash /usr/local/bin

这是最好的方法吗? (存储在 /opt 中并 linkint 到 /usr/local/bin ;变量在 .bashrc 中并用 600 对其进行 chmoding)

答案1

  • 之后declare -x HABITICA_UUID=[myUserID]我在 ~/.bashrc 中没有找到任何条目。有人知道为什么吗?

您需要将其放入配置文件中,例如~/.bashrc.在命令行上设置,仅对当前 shell 有效。

  • 因此,我在 ~/.bashrc 的顶部添加了 HABITICA_UUID 和 HABITICA_TOKEN (并为自己做了评论)
  • chmod 600 ~/.bashrc因为UUID和TOKEN被视为PW。

您可以将其放在一个新的自定义文件(chmod此文件)中,并添加一行以从中获取此文件~/.bashrc

in ~/.bashrc(最好还添加代码来检查文件是否可读)

. ~/.my_custom_config
  • sudo mv ./habash /opt
  • sudo ln -s /opt/habash/habash /usr/local/bin

/opt最好不要和混用/usr/local。它们有不同的结构。

调查stow。然后,您将每个应用程序放入/usr/local/stow/app-name,并使用 stow 将其链接到/usr/local/{bin,lib,share,var,etc}

相关内容