创建一个运行脚本的别名

时间:2014-06-09 19:17:29

标签: linux alias

我想要一个别名,当我输入

[Floodgate]~$: bash (pluginname)

在终端运行

[Floodgate]~$: . ~/bash\ plugins/(pluginname)

到目前为止,我尝试过的所有别名都已经运行

[Floodgate]~$: . ~/bash\ plugins/ (pluginname)

斜杠和(pluginname)之间的空格导致问题。 如果没有为每个插件创建一个新的别名但是有一个通用的话真的很好。到目前为止唯一有效的是

alias bash='cd ~/bash\ plugins; .'

但这让我进入

[Floodgate]~/bash plugins/$: 

=============================================== ===================================

谢谢你的帮助!非常感谢

=============================================== ===================================

2 个答案:

答案 0 :(得分:1)

如上面Basile Starynkevitch所述,实现此目的的最简单方法是:(1)确保〜/ bash \ plugins目录中的文件可由您执行(并且它们包含有效的shell命令)。例如

chmod 0755 ~/bash\ plugins/* 

然后在你的路径中包含〜/ bash \ plugins。在你的〜/ .bashrc中包括:

export PATH=$PATH:~/bash\ plugins

现在要运行bash插件,只需在命令提示符下按名称调用它们:

$ pluginname

有很多方法可以做到这一点。您甚至可以使用.bashrc创建一个函数,该函数将插件名称作为输入,然后执行插件,例如。里面.bashrc:

function exeplugins {
   [[ -n $1 ]] || { echo "error: this command requires pluginname as input"; return 1; }
   bash "~/bash plugin/${1}"
}

alias bplugin='exeplugins'  # or any alias name you want 'bplugin' to be...

现在从命令行你可以做到:

$ bplugin pluginname

希望这会有所帮助。 (+1不要创建一个名为'bash'的别名 - 接着是坏juju)

答案 1 :(得分:0)

我强烈建议不要将别名命名为“bash”,因为这是打开新bash的命令,它可能会导致其他应用程序或脚本出现问题。否则这应该有效:

  alias openplugin="cd ~/bash\ plugins && cd"