可能重复:
如何在终端中为命令添加别名?
我在 Ubuntu 中使用 sublime text 2 文本编辑器进行开发。当我想从命令行打开文件时,我需要输入sublime-text-2 <file-name>
。
我希望能够通过 tab 键来sub
获得它,但是还有 sublime-text 和 subl 或者其他可以自动完成的东西。
有没有办法更改或创建名称 sublime-text-2 的别名并将其称为“sub”或“sublime”或甚至完全不同的名字,如“texta”?
答案1
只要这样做:
sudo ln -s /pathforsublimetext2install/sublime_text /usr/bin/sublime
另外,我建议您通过 PPA 安装 sublime text 2,因为它可以更好地与 Unity/Gnome 集成。
要安装此 PPA:
sudo add-apt-repository ppa:webupd8team/sublime-text-2
sudo apt-get update
sudo apt-get install sublime-text
答案2
我会使用alias
命令。我将这些东西放在我的~/.bash_alises
文件中,该文件由我的调用~/.bashrc
。您也可以将以下内容放入其中.bashrc
,无论哪种方式都由您决定。
我有这样的几行:
alias del='gvfs-trash' #I habitually avoid rm
alias def='surfraw google define:'
alias st2='sublime-text-2'
改变后~/.bash_aliases
第一次,输入source ~/.bash_aliases
。将来当您启动计算机时,这将完成。
嗨嗨。
答案3
默认情况下,您可以在桌面 Ubuntu 上的 bash 中获得别名的命令完成。
例如,这是我的scanh
别名(将通过制表符完成),来自 .bash_aliases:
alias scanh='egrep -v "^ \*|^\/\*|^$" '
你也可以用同样的方式为自己创建一个别名。例如,
alias text2='/pathtofile/sublime-text-2'
如果愿意的话,您还可以将阻止命令移开。
例如,如果调用的命令sublet
混淆了你的制表符补全,则该过程可能如下所示:
$ which sublet
/usr/bin/sublet
$ ls -la sublet
/usr/bin/sublet
$ sudo mv /usr/bin/sublet /usr/bin/xsublet
将 sublime-text-2 命令链接到更短的命令的方法相同。只需确保您创建的链接在您的路径中:
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
$ ln -s sublime-text-2 /usr/local/bin/sub
上述任何目录,/usr/bin/、/usr/sbin 等都可以。如果您有独立脚本或二进制文件,也可以直接将其移动到路径中:
$ sudo mv sublime-text-2 /usr/bin/sub