我有一个脚本 script.sh 但如果运行时必须通过文件所在的文件夹打开并以 ./script.sh 的方式运行它,我会很懒惰,
如何让我的脚本使用关键字?
我有一个 script.sh 文件
如果我把它写在命令中
然后“testscript”将打开 script.sh 文件
请帮忙
我有一个脚本 script.sh 但如果运行时必须通过文件所在的文件夹打开并以 ./script.sh 的方式运行它,我会很懒惰,
如何让我的脚本使用关键字?
我有一个 script.sh 文件
如果我把它写在命令中
然后“testscript”将打开 script.sh 文件
请帮忙
这个很简单,但我假设你还不知道别名。
别名是将您自己的自定义命令转换为实际功能命令的方法。它们非常方便。
打开您的主目录并创建一个名为
.bash_aliases
. 继续并保存它 - 但在您的编辑器中保持打开状态。现在,想一想您想用来执行脚本的单词或短语。就我而言,我使用了
test
.在我的 Documents 目录中,我创建了一个名为的文件
test.sh
,其中包含:注意不要忘记使脚本可执行。您可以
chmod +x
使用右键单击/属性菜单选项或在 GUI 中执行此操作。现在,回到您的
.bash_aliases
文件中,您需要将其添加为命令。就我而言,它看起来像这样:注意在所有这些情况下,“。” 和大写是必不可少的。它区分大小写。
现在,您需要告诉系统查找(并重新加载任何新的)别名。这是在终端中通过以下方式完成的:
毕竟,我可以这样做:
正如你所看到的,你告诉它别名在哪里并且你正在重新加载它们。每次添加新别名时,都需要运行它以使它们可用。
编辑:虽然上述方法可行,但仅当终端在您的
/home/user/
目录中打开时才有效。这很好,这是大多数终端打开的默认位置,但并非所有终端工作都在该目录中完成。答案是这样的:
现在,无论您在哪个目录中,您都可以输入
test.sh
,它就会工作。这不需要提升权限,然后脚本只能使用您的用户权限或您在执行时授予的任何其他权限进行操作。如果我不得不选择,我会使用这种方法 - 您使用用户的主目录变量
$HOME
(同样,区分大小写)作为通用用户可以设置它,配置它,使用它等等......它不需要 root 访问权限或任何额外的权限。如本答案其他地方所述,有多种方法可以实现这一目标。选择最适合您的需求并且需要最少权限的那个。
方法#2:
我感到无聊并决定添加另一种方式。
使脚本可执行后,您可以将脚本移动到
usr/bin
并使其成为命令。就我而言,我使用了 GUI。在终端中,我输入:
然后,我只是将 test.sh 复制到
usr/bin
- 它保留了我之前应用的可执行权限。在这一点上,我可以使用
test.sh
它并且它会工作。我对此不满意,因此我将其重命名为普通
test1
文件,并从文件名中删除了 .sh。Linux 并不太关心扩展名。我无法命名它test
,因为目录中已经有一个测试usr/bin
。所以,test1
就是我给它取的名字。显然,你可以随意命名它,只要它不与其他文件名冲突。现在,从终端,它的工作原理是这样的:
如您所见,有多种方法可以做到这一点。我最喜欢别名方法,因为它不需要任何提升的权限,而且我是“最少权限”方法的忠实粉丝。