【问题标题】:Unknown bash scripts running when terminal opens?终端打开时运行的未知bash脚本?
【发布时间】:2012-06-26 08:19:21
【问题描述】:

我不确定这里发生了什么 - 我在我的 Mac 上打开一个终端窗口并看到以下内容:

Last login: Tue Jun 26 00:36:08 on ttys002
-bash: : command not found
-bash: : command not found

在我看来,每当我打开一个新的终端窗口时,就会执行一些文件,但我不知道如何找到这个文件。是否有一些我可以轻松找到的终端打开时运行的文件列表?我很想知道这里发生了什么(以及它最初是如何发生的)

【问题讨论】:

    标签: macos bash unix terminal


    【解决方案1】:
    grep Sorry $(grep -l Thank /etc/profile /etc/bash* ~/.bashrc ~/.bash_profile ~/.profile) /dev/null
    

    而且(如果你很幸运的话)你会发现这些带有ThankSorry 的奇怪命令的位置。

    这是可能的,尽管这些行是在某些命令替换期间产生的。 在这种情况下,您将找不到字符串。我建议然后将set -x 添加到~/.bash_profile 以查找产生这些消息的字符串。

    【讨论】:

    • 如果那个Sorry是命令的输出,他不会这样找到的
    • 虽然,你是对的。它可以是命令替换或类似的东西。
    • 找到了,谢谢!不过,我不知道文本是如何进入 bash_profile 的。很奇怪。
    • 这行得通。每次打开终端窗口时,我都会出现“-bash: rt: command not found”。我打开我的 bash 个人资料,发现一行以“rt”开头,这与我几天前正在做的事情有关。
    【解决方案2】:

    检查.bashrc.profile.bash_profile。具体来说,我感觉您有一个用引号标记的字符串,然后正在尝试执行该字符串

    来自 bash 手册:

    当 bash 作为交互式登录 shell 或作为 非交互 带有 --login 选项的活动 shell,它首先读取并执行 com- 来自文件 /etc/profile 的命令,如果该文件存在的话。看完之后 该文件会查找 ~/.bash_profile、~/.bash_login 和 ~/.profile, 按该顺序,并从第一个命令中读取并执行命令 存在且可读。

    【讨论】:

    • 谢谢!我应该知道的:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-16
    • 1970-01-01
    • 2015-07-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多