繁体   English   中英

如何在非交互式 shell 中使用 bash 别名?

[英]How to use bash aliases in a non-interactive shell?

我使用的是 Windows 10。我按照本教程介绍了如何创建 bash 别名。 我将别名放在~/.bashrc中,然后使用source ~/.bashrc 当我尝试使用其中一个别名时,出现以下错误:

$ docs
bash: docs: command not found

我打开了一个新的 PowerShell 会话,使用了bash ,尝试了别名,但它仍然给出了同样的错误。 但它仅在我在Git Bash上尝试时才有效。 根据我的研究,我在非交互式shell 中打开 bash。 我在这篇文章中尝试了答案并将shopt -s expand_aliases放在.bashrc的末尾,但它仍然不起作用。 这就是我的.bashrc的样子:

######## Aliases #######

# Git
alias gcl="git clone"
alias gco="git commit"
alias gcom="git commit -m"
alias gpus="git push"
alias gpul="git pull"
alias gbr="git branch"
alias gad="git add"
alias gre="git restore"
alias grest="git restore"
alias gsw="git switch"
alias gst="git status"
alias gcoam="git commit --amend"
alias gcoamne="git commit --amend --no-edit"
alias gcoamm="git commit --amend -m"

# Navigation
alias home="cd ~"
alias docs="cd ~/Documents"
alias labs="cd ~/Documents/VSCode"

alias open="code ."

################

shopt -s expand_aliases # allows aliases available in non-interactive shells

如何使 bash 别名在非交互式 shell 中工作?

您必须打开此功能:

shopt -s expand_aliases

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM