我无法让 expand_aliases 在 bash 中生效。我尝试了很多不同的东西,但没有任何效果。
这是一个简单的测试用例:
/bin/bash -c 'shopt -s expand_aliases; alias cdtmp="cd /tmp"; alias; cdtmp; pwd;'
和输出:
$ /bin/bash -c 'shopt -s expand_aliases; alias cdtmp="cd /tmp"; alias; cdtmp; pwd;'
alias cdtmp='cd /tmp'
/bin/bash: cdtmp: command not found
/home/user
$ /bin/bash --version
GNU bash, version 3.2.25(1)-release (i686-redhat-linux-gnu)
Copyright (C) 2005 Free Software Foundation, Inc.
(是的,我使用 shopt 而不是 -O 选项来 bash,只是为了证明它正在完成。)
有任何想法吗?