Linux / Ubuntu为sh文件创建可执行命令

时间:2015-05-07 18:53:06

标签: linux ubuntu

我想为Ubuntu创建可执行命令。

我有/dir/bin/start.sh

我可以这样执行

./dir/bin/start.sh

但我想知道如何将它放到Ubuntu配置或其他东西,所以它会 只需

即可从shell调用它
start

1 个答案:

答案 0 :(得分:1)

您可以通过以下方式执行此操作:

  • 将命令的目录添加到$PATH变量,因此:

    export PATH=$PATH:/dir/bin
    

    要执行此操作,必须将此行添加到~/.profile文件中:

     echo 'export PATH=$PATH:/dir/bin' >> ~/.profile
    
  • 在添加到路径的目录中创建快捷方式(例如使用ln -s '/dir/bin/start.sh' start);

    cd <pathdirectory>
    ln -s '/dir/bin/start.sh' start
    
  • 创建一个别名,以便shell简单地替换命令:

    echo 'alias start=./dir/bin/start.sh' >> ~/.profile
    

如何/为何如此工作

如果在shell中键入命令,它将首先查找别名,并替换别名。因此,如果您为start定义了别名,则只需替换为./dir/bin/start.sh;好像你自己写的那样。

接下来,shell将尝试查找命令的解释。如果该命令是文件(例如通过使用别名),则执行该文件。否则,系统会回到$PATH s。

$PATH是系统搜索具有该名称的文件的一系列路径。它按该顺序搜索路径,并在所有文件中搜索具有相同名称的文件。如果存在此类文件,则会运行该文件。

你可以做一些事情:

  • 将此类程序放在目录中;但这不是一个很好的选择,因为不同的项目然后组合在一起;
  • 使用快捷方式(ln解决方案),在这种情况下,您只在路径文件夹中添加“代表”;
  • 通过执行PATH=$PATH:/dir/bin来扩展路径数量,以便它也会搜索您的项目。
相关问题