如何缩写这个命令?

如何缩写这个命令?

每次我需要使用 Sublime 从终端打开一个项目时,我都必须这样做:

nohup sublime . &

有办法将它短路吗?

答案1

您可以通过创建别名来缩短命令。别名应放在 中~/.bash_aliases(而不是~/.bashrc或中~/.profile)。

别名.bash_aliases

您可以~/.bash_aliases使用以下命令创建:

touch ~/.bash_aliases

您现在可以编辑该文件并以以下格式在其中输入您的别名:

alias cmd='command'

例如:

alias subl='nohup sublime . &'

请注意,如果您定义的别名与命令同名,则别名优先。这可能很有用:

alias ls='ls -alF --color=auto'

使用时将始终为您提供彩色的、分类的、完整的列表ls

为什么不在.bashrc.profile

.bashrc默认情况下,通常会填充各种漂亮的东西。虽然这当然很有用,但.profile在您自己添加别名时并不方便。显然有人想到了这一点,并在默认中添加了以下内容.bashrc

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

如果.bash_aliases存在,它将被加载,.bashrc并且您将获得一个包含所有别名的完整文件。如果您安装了该bash-doc包,则可以在以下位置找到一些示例:

 /usr/share/doc/bash-doc/examples/startup-files/Bash_aliases

答案2

您可以通过编辑文件来缩短命令.bashrc,并在文件末尾添加以下行。

别名 new_command='long old_command'

在这里你可以使用

别名新命令 = nohup sublime . &

答案3

将以下内容添加到您的.bashrc

 alias sblm='nohup sublime . &'

这将为该命令创建一个别名。您可以随时执行 then ,它将被您的 shellsblm评估为。nohup sublime . &

答案4

您可以制作类似这样的包装脚本 -

mkdir -p ~/bin
echo "nohup sublime . &" > ~/bin/sbl
chmod 700 ~/bin/sbl

现在输入sbl将会产生您想要的效果(但如果您还没有~/bin文件夹,您可能必须先注销并重新登录一次以确保您的 PATH 正确)。

传统上,我们使用别名来实现这一点,但是我始终喜欢使用包装器,因为如果您决定稍后编辑它们以便执行更复杂的任务,它们会更加灵活。

相关内容