在mac终端设置默认目录

Posted

技术标签:

【中文标题】在mac终端设置默认目录【英文标题】:Set the default directory in mac terminal 【发布时间】:2011-08-07 11:51:09 【问题描述】:

我只对 git 使用终端(mac),我只对一个目录使用 git。是否可以将默认目录(打开终端时的目录)设置为我使用git的目录,如果可以,如何设置?

【问题讨论】:

【参考方案1】:

如果您修改 .zshrc 文件,“文件夹中的新终端”服务快捷方式将无法在 Mac 上运行。我不推荐。

【讨论】:

【参考方案2】:

我修改了@Michael Ozeryansky 的答案以解决他提到的警告:

唯一需要注意的是,如果您在实际的 HOME 目录中并打开一个新窗口,它将带您进入 START。这是预期的。

要使您的第二个终端窗口选项卡从 Home 或任何其他目录开始:

export START="/Users/michael/my/starting/directory"
export DIR = "path/to/directory"
if [[ $PWD == $HOME ]]; then
     cd $START
else 
     cd $HOME  // or any other dir: cd $DIR
fi

【讨论】:

【参考方案3】:

使用窗口组。按照您希望它们在启动时的方式排列您的外壳窗口 - cd 到您想要的每个目录,设置颜色,外壳 - 编辑标题等。然后转到窗口 - “将 Windows 保存为组。 ……”。给它一个名字,选中“终端启动时使用窗口组”。下次您开始时,此安排将是您的起点。

【讨论】:

【参考方案4】:

如果您使用例如 ZSH, 只需将此字符串添加到您的配置文件.zshrc

# Working directory
cd ~/Desktop

例如:

# Working directory
cd $HOME/Desktop

根据您的喜好更改路径

它只是将命令返回给 ZSH,你不会在终端中看到它,它会从你选择的 path 开始。

【讨论】:

【参考方案5】:

我喜欢“打开新窗口:相同的工作目录”。我为这个问题找到的所有答案(许多 SO)都会通过总是转到新的主目录来打破该设置。下面是我在 .profile(或 .bashrc 等)顶部使用的内容。

export START="/Users/michael/my/starting/directory"
if [[ $PWD == $HOME ]]; then
    cd $START
fi

这将仅在启动时查看您是否在 HOME 目录中,如果是,请切换到新的 START 目录。这样新窗口就不会自动运行这个命令了。

唯一需要注意的是,如果您在实际的 HOME 目录中并打开一个新窗口,它将带您到 START。这是预期的。

【讨论】:

经过长时间搜索找到的最佳解决方案。 在我的 .bash_profile 上工作,而不是在 .bashrc.profile 上工作。 谢谢!最佳解决方案 但它会保留新标签页上的最后一个工作文件夹吗? @Volatil3 试试看。是的。【参考方案6】:

试试echo "cd $directory" >> ~/.bash_profile

【讨论】:

我不得不使用:echo "cd "`pwd` >> ~/.bash_profile【参考方案7】:

从 Mac OS X Lion 10.7 开始,终端支持恢复,默认情况下会在您退出时自动恢复您打开的终端,恢复它们的工作目录。因此,您可以打开一个新终端并 cd 到您的 git 目录,然后在退出时保持窗口打开。每次重新打开终端时,终端都会在同一目录中。 (默认情况下,这适用于 bash。如果您使用的是其他 shell,则需要将 /etc/bashrc 中的代码改编为您的 shell。我在 SuperUser 上对 Resume Zsh-Terminal (OS X Lion) 的回答中发布了 zsh 的代码.)

您还可以安排终端在特定目录中启动 shell。您可以自定义或创建“设置配置文件”以在启动时发出“cd”命令:

终端 > 首选项 > 设置 > [配置文件] > Shell > 启动 > 运行命令

启用“运行命令”和“在 shell 内运行”,然后将命令设置为 cd your_git_directory。当您使用该配置文件打开一个新终端时,它将转到您的 git 目录。

我建议您使用配置文件列表底部的操作(“齿轮”)菜单复制当前的默认配置文件(如果您从未更改过,默认为“基本”),然后自定义该配置文件。

最后,要让它在您打开终端时自动打开带有此配置文件的终端,请设置

终端 > 首选项 > 启动 > 在启动时,打开

到您的自定义配置文件。 (在 Lion 上,Resume 将恢复您退出时打开的窗口,而不是执行启动操作。正如我所提到的,您可以在退出时保持此终端打开,再次打开终端时它将恢复。或者,您可以在退出时按Option修饰键;退出菜单项将变为“退出并丢弃窗口”,下次打开终端时将执行启动操作。)

【讨论】:

非常有用,谢谢!我已经为终端配置了每个 Xcode 项目和 git 子模块目录、标题和颜色的启动选项卡。每个都以 git fetch 和 git status 启动。甜! 如果您使用“Shell open with”“默认登录 shell”之外的其他内容(例如 apple.stackexchange.com/questions/41743/… 需要更快的启动),“运行命令”方式似乎不起作用... [ ?] 无论如何 iterm2 似乎允许所需的行为,回到它 @rogerdpack 如果您将 Shells open with:Run command: 设置为终端在 /etc/shells 中找不到的命令假定它不是 shell 并禁用“最后登录”横幅和 在 shell 内运行等行为。这是解决方法有效的唯一原因。您最好避免这种解决方法并定期清除系统日志,特别是如果您首先检查日志大小 - 如果它不是太大,解决方法没有问题。 (请考虑向 Apple 提交有关登录性能的错误报告。) 我建议将其 cd 放入您想要的目录,然后使用 clear 命令跟进,以使提示看起来新鲜。在启动时运行此命令:“cd && clear”

以上是关于在mac终端设置默认目录的主要内容,如果未能解决你的问题,请参考以下文章

Mac命令行终端怎么打开 Mac终端怎么打开

Mac 上将zsh用做默认Shell

超级方便 - Mac OS 在访达打开终端,并在终端内定位当前的目录

Mac -- zsh-最新全网超详细的个性化终端(Terminal)颜色及vim颜色配置

在Mac里给Terminal终端自定义颜色

Mac终端修改文稿文件夹位置