[英]How do I make a command in linux using a bash script?
我正在尝试为终端发出命令。 我准备了一个 bash 脚本 (la.sh),我只想输入 la 来运行它。 我怎样才能获得代码以便我可以输入 la?
我试过把它放在 /bin 文件夹中,但是没有运气。
我能做些什么来解决这个问题?
我正在使用最新版本的 Manjaro Gnome。
非常感谢!!!
顺便说一句,脚本实际上只是ls
。
这只是一个练习脚本。
文件 la.sh 必须放在您的路径中。 然后你可以为它创建一个别名。
alias la="la.sh"
让我们考虑您的脚本存储在/some/path/la.sh
下。 在我看来,您有几种解决方案来实现您的目标:
选项1:
将脚本添加到您的用户路径,以便您可以直接调用它。
echo "export PATH=$PATH:/some/path/" >> ~/.bashrc
然后你就可以在你的终端中使用:
$ la.sh
使用此选项,您可以根据需要使用任何参数调用la.sh
如果要求只是调用la
您还可以重命名脚本或创建软链接:
mv /some/path/la.sh /some/path/la
或者
ln -s /some/path/la.sh /some/path/la
选项 2:
为脚本创建别名。
echo "alias la='/some/path/la.sh'" >> ~.bashrc
然后你就可以在你的终端中使用:
$ la
但是,使用此选项您将无法将参数传递给您的脚本(执行类似于la param1 param2
),除非您定义一个更复杂的别名(使用.bashrc
的函数的别名,但我认为这是不合适的)问题的范围)。
重要说明:记住在您的终端( source .bashrc
)中重新加载环境,或者每次您对.bashrc
文件进行修改时关闭并再次打开终端。 否则,您将无法看到任何更改。
如果您想让命令以两个不同的名称(在您的情况下为la.sh
和la
)可用,我建议不要使用别名:在 .bashrc 中定义的别名仅在交互式 bash 中可用; 如果您运行非 bash 交互式 shell,或编写 bash 脚本,则无法使用它。
IMO 最通用的方法是创建链接。 既然你说已经把la.sh
放到bin里了,那么可以在同目录下创建链接,即
ln /bin/la /bin/la.sh # creates a hard link
或者
ln -s /bin/la /bin/la.sh # creates a symbolic link
在你的情况下,任何一个都可以。 如果您想了解有关硬链接和符号链接之间差异的更多信息,请查看此处的示例。
它结合了每个人的答案。
我所要做的就是进入la.sh
的目录。将其重命名为la
作为文本文件。 运行chmod 777 la
把它变成任何人都可以执行的。 使用命令export PATH=$PATH:~/Directory/It/Was/In/
将其添加到我的路径中
感谢所有做出贡献的人。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.