【问题标题】:How to configure the display of the terminal on a Mac?如何在 Mac 上配置终端的显示?
【发布时间】:2011-08-11 13:45:06
【问题描述】:

我正在使用 Macbook Pro 进行一些 Objective-C 研究。我没有使用 Xcode,而是选择使用终端,因为我不想为每个主程序创建一个项目。终端的工作方式和 Linux 下的一样,除了一件事:每当我执行一个可执行文件时,它总是先显示日期、时间和程序名称,然后再显示我的可执行文件的输出。我觉得这有点令人不安,因为它占据了终端宽度的一半以上。有什么办法可以从显示器中删除这些多余的东西吗?

【问题讨论】:

    标签: macos terminal


    【解决方案1】:

    您指的是在 shell 提示符下输入的命令吗?在 Mac OS X 上,默认 shell 是 bash,默认情况下,当调用在 shell 提示符下输入的命令时,它不会显示任何额外内容。

    如果你看到这样的东西

    $ somecommand
    Thu Aug 11 18:54:10 somecommand
    command output
    

    那么这要么由您正在运行的命令显示,要么外壳必须已在您的系统上定制。如果每个命令都出现这种情况,包括“ls”和“cat”之类的命令,则查找 ~/.bash_profile、~/.bashrc 和其他标准 shell 启动脚本,看看是否有人自定义了 shell。

    另一方面,如果你看到这样的东西

    Last login: Thu Aug 11 18:59:12 on ttys001
    hostname:~ username$ somecommand
    command output
    

    一旦您打开终端,就会有几种不同的方式导致这种情况发生:

    • 终端设置配置文件已自定义为在打开终端时运行“somecommand”。查看 终端 > 首选项 > 设置 > [配置文件] > Shell > 启动 > 运行命令:
    • 要运行您的命令,您打开了一个 *.command 或其他文件,在这种情况下终端会自动写入“filename ; exit;”到命令行执行它。

    如果是其中任何一种情况(尽管我认为这不太可能是您所描述的),那就是他们的行为方式。要不以这种方式运行命令,请在命令提示符处手动输入。

    【讨论】:

    • 我不是在谈论命令。运行命令没问题。问题只是与运行我编译的可执行文件有关。
    • 然后,正如我在回答中提到的,它可能是您的程序的一个功能,而不是外壳。您需要检查程序的源代码以确定输出不需要的文本的原因。如果您编辑问题以包含您在终端中看到的确切示例,这将有所帮助。
    【解决方案2】:

    尝试从 Bash 切换到 Z-Shell。

    要更改 shell,只需在终端中运行以下命令: $ chsh -s /bin/zsh 。您可以使用 zsh-devel 端口通过 MacPorts 升级到最新的 zsh 版本。

    【讨论】:

    • shell 在默认配置中执行此操作的可能性很小。如果是外壳的问题,则可以关闭一些自定义功能。无需批发换壳。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-10-04
    • 1970-01-01
    • 2020-01-02
    • 1970-01-01
    • 2021-02-28
    • 2017-01-13
    • 2020-08-31
    相关资源
    最近更新 更多