我有一个包含一堆脚本的文件夹。假设文件夹位于~/scripts
有没有一种方法可以轻松地在目录中执行这些脚本而无需执行类似的操作~/scripts/file1.sh
?我试过把脚本放进去/bin/
,但我还是得做file1.sh
。有没有一种方法可以让我只用它们的名字来引用这些脚本,而不需要扩展名(即file1
)?
谢谢。
在 .profile、.bashrc 或命令行本身中添加~/scripts
到您的 PATH 环境变量。使用以下命令更改 PATH 环境变量:
export PATH=$PATH:~/scripts
完成后确保您的脚本使用chmod +x file
命令具有执行权限,然后您可以执行:
file1.sh
file2.sh
即不以这些脚本的实际路径为前缀。
如果您想运行许多脚本,这不是最佳解决方案,但您可以为最常用的脚本创建别名。我还将我的 shell 脚本命名.sh
为用于文档目的的扩展名(即在执行 a 时很容易发现ls
)。
这样,别名是不带 .sh 扩展名的脚本名称,而是通过直接引用我自己的~/bin
目录来调用脚本。
这个操作系统的好处之一是总有很多方法可以完成一项任务,在你的工具箱中有多种方法,以防哪天哪一种方法不起作用。