linux源码符号链接(symbolic link)

标签 linux zsh

我有一个 bash 脚本,我想从任何目录调用它,但我不想将它所在的目录添加到 PATH,因为它充满了许多其他脚本,这些脚本只会变得困惑。

有问题的脚本操纵环境变量,所以我必须找到它。 我尝试创建一个别名

alias  aliastoscript="/path/to/script" 
source aliastoscript #This does not work says no such file

我也无法将脚本本身复制到其他位置,因为它取决于目录结构和目录中的其他脚本。

所以我尝试了指向路径中已有位置的符号链接(symbolic link):

ln -s /path/to/script /directory/already/in/path/myscript

但这也不起作用:

source myscript #says no such file exists

谁能建议我如何实现这一目标?为什么符号链接(symbolic link)方法不起作用?

如果有什么不同,我在 ubuntu 14.04 上使用 zsh shell

编辑:

下面给出的答案有效,但我也想知道为什么符号链接(symbolic link)方法不起作用。 这是命令序列

ln -s /path/to/script /directory/already/in/path/myscript
#Now there is a symlink called myscript in a directory which is in PATH

source myscript arg1 #This throws an error saying no such file myscript,    
#but it is not supposed to happen because myscript resides in a directory which is in PATH

编辑 2: 我只是想出了我做错了什么,我创建的符号链接(symbolic link),我使用了相对路径,这对我来说完全是愚蠢的,使用绝对路径它就像一个魅力。

最佳答案

尝试替换:
别名 aliastoscript="/path/to/script"

与:
export aliastoscript="/path/to/script"

关于linux源码符号链接(symbolic link),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40548367/

相关文章:

linux - MongoDB - Ubuntu crouton - 无法启动服务

java - 通过 php 启动和停止 minecraft(java 进程)

小部件只能在 ZLE 处于事件状态时调用

zsh - 如何在 shell 中获取字符串路径?

bash - .zshrc 分配类型不一致?

linux - 使用 7zip 解压文件后如何重命名这些文件并保存

linux - 在我的 Apache2 access.log 中,如何过滤显示的内容?

ipv6 的 Linux tcp 设置

visual-studio-code - 当 Zshell 主题存在时,终端开始表现不佳

timezone - 'US/Eastern' 和 'US/Central' 和 'US/Pacific' 是否不推荐用于 strftime 或只是 PHP?