对你的问题的一些警告

对你的问题的一些警告

添加自定义脚本的最有效方法/bin?我知道我可以这样做:

  • 符号链接(但即使经过研究,我也不明白如何撤消或清理它)

  • alias xxx="/path/to/script"

  • 或者将我的 repo 文件夹添加到路径:export $PATH=~/gitClones/myGit/Bug-Bounty-Enumation-w-ZSH/:$PATH

我想知道这方面的最佳做法是什么?

顺便说一句,这些都还不适合我:

export $PATH="/home/nate/gitClone/myGit/Bug-Bounty-Enumation-w-ZSH":$PATH
export: not valid in this context: /home/nate/go/bin/:/home/nate/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin

答案1

对你的问题的一些警告

首先,aliases 和添加到PATH只会影响您配置的 shell。有一些中央系统文件会影响多个帐户,但即便如此,您也仅限于那种 shell,而且您实际上并没有向 中添加任何内容/bin

其次,正如 glenn jackman 指出的那样,export由于$等号左侧的 ,您的代码无法正常工作。$表示替换,因此在 shell 中对其进行赋值是没有意义的,尽管其他语言(如 Perl)允许您这样做。

通过符号链接安装

因此,我们只剩下符号链接选项了。将其放入 中更为正确/usr/local/bin/。我将针对名为 的脚本执行此操作~/Documents/stackexchange/example。要创建符号链接,我将:

cd /usr/local/bin
sudo ln -s ~/Documents/stackexchange/example .

清理方法:

sudo rm /usr/local/bin/example

并验证我们是否已清理:

$ ls /usr/local/bin/example 
ls: /usr/local/bin/example: No such file or directory

$ ls -l ~/Documents/stackexchange/example 
-rwxr-xr-x  1 chicks  staff  26 Aug 29 16:36 /Users/chicks/Documents/stackexchange/example

我添加了 $ 来表示提示,因此您可以看到,ls虽然符号链接消失了,但原始文件仍然存在。

最佳实践

以这种方式使用符号链接是一种最佳实践,它与 Homebrew 安装东西的方式类似。

/opt/$PROJECT_NAME/bin将代码放入并从那里进行符号链接也是最佳做法。

Root 应该拥有 中的文件/opt。如果您将项目保存在主目录中,我会将文件保留为用户所有,以便您可以轻松地使用它们。

相关内容