bash_completion 导致终端中出现“未找到命令”

问题描述 投票:0回答:2

我使用 bash_completion 来点击选项卡并查看分支名称和目录。这一切都有效。我将其放入我的 bash_profile 中以便连接 bash_completion:

if [ -f `brew --prefix`/etc/bash_completion ]; then
    . `brew --prefix`/etc/bash_completion
fi

当我现在启动终端时,我得到:

-bash: @MyNameHERE: command not found

如果我从 bash_profile 中删除第一个片段,这个问题就会消失,但 bash_completion 将不起作用。有什么想法吗?

Brew Doctor 结果:

Please note that these warnings are just used to help the Homebrew  maintainers with debugging if you file an issue. If everything you use Homebrew for is working fine: please don't worry and just ignore them. Thanks!

Warning: Unbrewed header files were found in /usr/local/include.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected header files:
    /usr/local/include/node/android-ifaddrs.h
    /usr/local/include/node/ares.h
    /usr/local/include/node/ares_version.h
    /usr/local/include/node/libplatform/libplatform.h
    /usr/local/include/node/nameser.h
    /usr/local/include/node/node.h
    /usr/local/include/node/node_buffer.h
    /usr/local/include/node/node_internals.h
    /usr/local/include/node/node_object_wrap.h
    /usr/local/include/node/node_version.h
    /usr/local/include/node/openssl/aes.h
    /usr/local/include/node/openssl/archs/aix-gcc/opensslconf.h
    /usr/local/include/node/openssl/archs/aix64-gcc/opensslconf.h
    /usr/local/include/node/openssl/archs/BSD-x86/opensslconf.h
    /usr/local/include/node/openssl/archs/BSD-x86_64/opensslconf.h
    /usr/local/include/node/openssl/archs/darwin-i386-cc/opensslconf.h
    /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/opensslconf.h
    /usr/local/include/node/openssl/archs/linux-aarch64/opensslconf.h
    /usr/local/include/node/openssl/archs/linux-armv4/opensslconf.h
    /usr/local/include/node/openssl/archs/linux-elf/opensslconf.h
    /usr/local/include/node/openssl/archs/linux-ppc/opensslconf.h
    /usr/local/include/node/openssl/archs/linux-ppc64/opensslconf.h
    /usr/local/include/node/openssl/archs/linux-x32/opensslconf.h
    /usr/local/include/node/openssl/archs/linux-x86_64/opensslconf.h
    /usr/local/include/node/openssl/archs/solaris-x86-gcc/opensslconf.h
    /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/opensslconf.h
    /usr/local/include/node/openssl/archs/VC-WIN32/opensslconf.h
    /usr/local/include/node/openssl/archs/VC-WIN64A/opensslconf.h
    /usr/local/include/node/openssl/asn1.h
    /usr/local/include/node/openssl/asn1_mac.h
    /usr/local/include/node/openssl/asn1t.h
    /usr/local/include/node/openssl/bio.h
    /usr/local/include/node/openssl/blowfish.h
    /usr/local/include/node/openssl/bn.h
    /usr/local/include/node/openssl/buffer.h
    /usr/local/include/node/openssl/camellia.h
    /usr/local/include/node/openssl/cast.h
    /usr/local/include/node/openssl/cmac.h
    /usr/local/include/node/openssl/cms.h
    /usr/local/include/node/openssl/comp.h
    /usr/local/include/node/openssl/conf.h
    /usr/local/include/node/openssl/conf_api.h
    /usr/local/include/node/openssl/crypto.h
    /usr/local/include/node/openssl/des.h
    /usr/local/include/node/openssl/des_old.h
    /usr/local/include/node/openssl/dh.h
    /usr/local/include/node/openssl/dsa.h
    /usr/local/include/node/openssl/dso.h
    /usr/local/include/node/openssl/dtls1.h
    /usr/local/include/node/openssl/e_os2.h
    /usr/local/include/node/openssl/ebcdic.h
    /usr/local/include/node/openssl/ec.h
    /usr/local/include/node/openssl/ecdh.h
    /usr/local/include/node/openssl/ecdsa.h
    /usr/local/include/node/openssl/engine.h
    /usr/local/include/node/openssl/err.h
    /usr/local/include/node/openssl/evp.h
    /usr/local/include/node/openssl/hmac.h
    /usr/local/include/node/openssl/idea.h
    /usr/local/include/node/openssl/krb5_asn.h
    /usr/local/include/node/openssl/kssl.h
    /usr/local/include/node/openssl/lhash.h
    /usr/local/include/node/openssl/md4.h
    /usr/local/include/node/openssl/md5.h
    /usr/local/include/node/openssl/mdc2.h
    /usr/local/include/node/openssl/modes.h
    /usr/local/include/node/openssl/obj_mac.h
    /usr/local/include/node/openssl/objects.h
    /usr/local/include/node/openssl/ocsp.h
    /usr/local/include/node/openssl/opensslconf.h
    /usr/local/include/node/openssl/opensslv.h
    /usr/local/include/node/openssl/ossl_typ.h
    /usr/local/include/node/openssl/pem.h
    /usr/local/include/node/openssl/pem2.h
    /usr/local/include/node/openssl/pkcs12.h
    /usr/local/include/node/openssl/pkcs7.h
    /usr/local/include/node/openssl/pqueue.h
    /usr/local/include/node/openssl/rand.h
    /usr/local/include/node/openssl/rc2.h
    /usr/local/include/node/openssl/rc4.h
    /usr/local/include/node/openssl/ripemd.h
    /usr/local/include/node/openssl/rsa.h
    /usr/local/include/node/openssl/safestack.h
    /usr/local/include/node/openssl/seed.h
    /usr/local/include/node/openssl/sha.h
    /usr/local/include/node/openssl/srp.h
    /usr/local/include/node/openssl/srtp.h
    /usr/local/include/node/openssl/ssl.h
    /usr/local/include/node/openssl/ssl2.h
    /usr/local/include/node/openssl/ssl23.h
    /usr/local/include/node/openssl/ssl3.h
    /usr/local/include/node/openssl/stack.h
    /usr/local/include/node/openssl/symhacks.h
    /usr/local/include/node/openssl/tls1.h
    /usr/local/include/node/openssl/ts.h
    /usr/local/include/node/openssl/txt_db.h
    /usr/local/include/node/openssl/ui.h
    /usr/local/include/node/openssl/ui_compat.h
    /usr/local/include/node/openssl/whrlpool.h
    /usr/local/include/node/openssl/x509.h
    /usr/local/include/node/openssl/x509_vfy.h
    /usr/local/include/node/openssl/x509v3.h
    /usr/local/include/node/pthread-fixes.h
    /usr/local/include/node/stdint-msvc2008.h
    /usr/local/include/node/tree.h
    /usr/local/include/node/uv-aix.h
    /usr/local/include/node/uv-bsd.h
    /usr/local/include/node/uv-darwin.h
    /usr/local/include/node/uv-errno.h
    /usr/local/include/node/uv-linux.h
    /usr/local/include/node/uv-sunos.h
    /usr/local/include/node/uv-threadpool.h
    /usr/local/include/node/uv-unix.h
    /usr/local/include/node/uv-version.h
    /usr/local/include/node/uv-win.h
    /usr/local/include/node/uv.h
    /usr/local/include/node/v8-debug.h
    /usr/local/include/node/v8-platform.h
    /usr/local/include/node/v8-profiler.h
    /usr/local/include/node/v8-testing.h
    /usr/local/include/node/v8-util.h
    /usr/local/include/node/v8-version.h
    /usr/local/include/node/v8.h
    /usr/local/include/node/v8config.h
    /usr/local/include/node/zconf.h
    /usr/local/include/node/zlib.h

设置-xv结果:

https://raw.githubusercontent.com/SpencerRohan/debug/master/README.md

terminal homebrew bash bash-completion
2个回答
1
投票

这个:

-bash: @MyNameHERE: command not found

告诉您它正在尝试执行命令@MyNameHERE 并且它在您的系统中找不到它。

尝试更换:

if [ -f `brew --prefix`/etc/bash_completion ]; then
    . `brew --prefix`/etc/bash_completion
fi

brewPrefix=`brew --prefix`
if [ -f "${brewPrefix}/etc/bash_completion" ]; then
    . "${brewPrefix}/etc/bash_completion"
fi

我的大胆猜测是,

brew --prefix
的返回值中的某些空格可能会导致这种情况

如果这仍然不起作用,请尝试在

brewPrefix
变量中设置完整路径(用
#
注释另一行)。
.bash_profile
中的执行有时不像在常用终端中执行它那样工作,因为环境变量不同

还要确保该代码片段位于

.bash_profile

的底部

0
投票

我还无法发表评论,但还值得注意的是,如果后面的刻度仍然返回相同的错误值(对我来说是:

/usr/local/etc/bash_completion command not found: #

将第一行brew --prefix

(``)周围的后面的勾号
替换为引号(“”),解决了运行时的问题:source ~/.bash_profile

© www.soinside.com 2019 - 2024. All rights reserved.