【问题标题】:How do you invoke a terminal through a command and cd to a directory?如何通过命令调用终端并 cd 到目录?
【发布时间】:2011-04-07 07:04:52
【问题描述】:

我正在尝试从命令行调用终端并 cd 进入我的 MAC 机器上的特定目录。我知道这可以在 Linux 上使用这个命令来完成。

gnome-terminal --working-directory="/path/to/new/directory"

在没有实际编写 AppleScript 的情况下,Mac 中是否有等价物? 我知道这个命令会打开一个新终端。

open -a Terminal.app

我需要弄清楚的是一种将 cd 的参数从新终端添加到另一个目录的方法。

非常感谢任何帮助。 提前致谢, 德库尔卡尼

【问题讨论】:

    标签: macos command-line cd


    【解决方案1】:

    据我所知,没有一种明智的方法可以向终端传递这样的简单命令行请求。我同意这有点愚蠢,但你去吧。接受的方式是通过 AppleScript。如果你实在受不了,写一个 shell 命令,然后 open 代替。

    这两种方法的示例都可以在this answer 中找到。请注意,如果您正在编写一个.command 文件,之后会有一个隐含的exit,因此您需要在最后添加一个额外的shell,如下所示:

    echo cd /\;bash > /tmp/new.command;chmod +x /tmp/new.command; open /tmp/new.command
    

    而且环境可能最终不会按照您想要的方式设置。 AppleScript 方法不太麻烦,应该为您提供正确的环境:

    osascript -e 'tell application "Terminal" to do script "cd /"'
    

    无论如何,对我有用。

    【讨论】:

      猜你喜欢
      • 2012-12-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-18
      • 2011-12-08
      • 1970-01-01
      • 2018-01-11
      相关资源
      最近更新 更多