如何默认使用其他目录而不是主目录

时间:2011-08-10 20:12:52

标签: bash shell git-bash

我正在开发一台Windows机器。我需要的linux命令行唯一的地方是Git Bash。问题是:当我打开它时,我在主目录中。我必须将目录更改为我的工作区,例如:

cd ../../../d/work_space_for_my_company/project/code_source

我可以将它包装在.sh文件中,这样我就不用再手动输入了吗?这应该很简单,但我对Linux命令行一无所知。如果你能走我,我真的很感激 通过如何创建.sh文件。

16 个答案:

答案 0 :(得分:370)

这是一个更多Windows-ish解决方案: 右键单击用于启动git bash的Windows快捷方式,然后单击“属性”。将“Start In”的值更改为所需的工作空间路径。

编辑:同时检查目标值是否包含--cd-to-home选项,如下面的评论中所述。

答案 1 :(得分:99)

只需将该行写入文件" cd.sh",然后从shell提示符处执行此操作:

. ./cd.sh

或者您可以在$HOME/.bashrc文件中创建别名或功能:

foo() { cd /d/work_space_for_my_company/project/code_source ; }

如果目录名称包含空格或其他shell元字符,则需要引号;即使他们没有必要添加它们也不会受到伤害:

foo() { cd "/d/Work Space/project/code_source" ; }

(请注意,我已经省略了../../..;您不需要它。)

编辑:如果你添加一行

foo
在函数定义之后

.bashrc,shell将在该目录中启动。或者,如果您以后不需要使用该功能,则可以直接在cd中使用.bashrc命令。

(名称foo只是一个示例;您应该选择一个更有意义的名称。)

答案 2 :(得分:43)

将该行添加到主目录中的.bashrc文件中(如果该文件不存在则创建该文件):

cd ~
touch .bashrc
echo "cd ~/Desktop/repos/" >> .bashrc

答案 3 :(得分:37)

我使用ConEmu (在Windows上强烈推荐)我有启动Git Bash的任务,如

enter image description here

请注意底部的“Startup dir ...”按钮。它为Git Bash的启动命令添加了-new_console:d:<path>。指出你喜欢的地方

答案 4 :(得分:23)

这可能会对你有所帮助。

image description

  1. 右键点击git bash - &gt;特性
  2. 在Shorcut标签中 - &gt;从字段开始 - &gt;输入用户定义的路径
  3. 确保目标字段不包含--go-to-home,或者它将继续在HOME变量中指定的目录中启动
  4. 多数民众赞成。

答案 5 :(得分:10)

我刚刚将快捷方式图标的“开始时间”设置更改为:%HOMEDRIVE%/xampp/htdocs/

答案 6 :(得分:9)

这样做可以假设您希望每次打开命令行时都发生这种情况:

echo cd ../../../d/work_space_for_my_company/project/code_source >> ~/.bashrc

现在当你打开shell时,它将从home向上移动三个目录并更改为code_source。

此代码只是将“cd ../../../d/work_space_for_my_company/project/code_source”行附加到名为“.bashrc”的文件中。 “&gt;&gt;”如果文件不存在则创建一个文件然后追加。 .bashrc文件对于在启动/登录时运行命令非常有用(例如加载模块等)。

答案 7 :(得分:9)

(请阅读下面的警告)

在Windows中执行此操作的非常简单的方法(与git bash一起使用,可能还有其他方法)是创建一个名为HOME的环境变量,指向所需的主目录。

  1. 右键单击我的计算机,然后选择属性
  2. 选择高级系统设置(位置因Windows版本而异)
  3. 在系统属性中,选择高级选项卡
  4. 在高级选项卡上,选择环境变量(底部按钮)
  5. 在“系统变量”下,检查您是否已有一个名为HOME的变量。如果是,请通过突出显示变量名称并单击编辑来编辑该变量。将新变量名称设为所需路径。
  6. 如果HOME尚不存在,请单击系统变量下的“new”,并创建一个名为HOME的新变量,其值为所需路径。
  7. Environmental Variable

    注意:这可能会改变其他工作方式。例如,对我而言,它改变了我的.ssh配置文件所在的位置。在我的情况下,我希望我的家是U:\,因为这是我放置项目工作和应用程序设置的主要位置(即它确实是我的“主页”目录)。

    编辑2017年6月23日:这个答案继续得到偶尔的赞成,我想警告人们,虽然这可能“有效”,但我同意@AnthonyRaymond不建议这样做。如果您不关心其他事情是否破裂,这更像是一个临时修复或修复。更换房屋不会造成主动损坏(如删除硬盘),但以后可能会造成阴险的烦恼。当你开始遇到烦人的问题时,你可能不会记得这种变化......所以你可能会在以后摸不着头脑!

答案 8 :(得分:7)

右键单击Git Bash应用程序链接转到“属性”,然后将“开始位置”修改为您希望其开始的位置。

答案 9 :(得分:5)

来自 Windows 10

中的固定开始菜单项
  1. 打开固定快捷方式的文件位置
  2. 打开快捷方式属性
    1. 删除--cd-to-home arg
    2. 更新Start in路径
  3. 通过最近添加的
  4. 重新启动菜单

    open file location screenshot

    open shortcut properites screenshot

    update shortcut properites screenshot

    pin via recently added screnshot

    感谢所有其他答案如何做到这一点!想要提供Win 10指令......

答案 10 :(得分:4)

对于Windows:请按照以下步骤操作 -

  1. 转到Windows主页&gt;右键单击&#34; Git Bash&#34;应用
  2. 性状&gt;快捷键
  3. 更改以下两项设置: (a)从cd-to-home删除 - target (b)键入要在gt中使用git开始的文件夹路径&#34;开始于&#34;。
  4. 这对我有用:)

答案 11 :(得分:3)

如果您想在打开GIT bash时拥有项目选择列表

  • 在代码标头中编辑ppath到您的git项目路径,将此代码放入 .bashrc 文件并将其复制到您的 $ HOME < / em> dir(在Win Vista / 7中它通常是 c:\ Users \ $ YOU

.

#!/bin/bash
ppath="/d/-projects/-github"
cd $ppath
unset PROJECTS
PROJECTS+=(".")
i=0

echo
echo -e "projects:\n-------------"

for f in *
do
    if [ -d "$f" ]
    then
        PROJECTS+=("$f")
        echo -e $((++i)) "- \e[1m$f\e[0m"
    fi
done


if [ ${#PROJECTS[@]} -gt 1 ]
then
    echo -ne "\nchoose project: "
    read proj
    case "$proj" in
        [0-`expr ${#PROJECTS[@]} - 1`]) cd "${PROJECTS[proj]}" ;;
        *) echo " wrong choice" ;;
    esac
else
    echo "there is no projects"
fi
unset PROJECTS
  • 您可能希望将此文件设置为 GIT bash chmod + x .bashrc 中的可执行文件(但它可能是多余的,因为此文件存储在 ntfs < / em> filesystem)

答案 12 :(得分:2)

如果您输入以下命令: echo cd d:/some/path >> ~/.bashrc

将行cd d:/some/path追加到.bashrc。如果文件不存在,>>会创建一个文件,然后附加。

答案 13 :(得分:2)

当我将cd放到我的工作目录中〜/ .bashrc

时,Windows上的我的Git Bash快捷方式抱怨了
WARNING: Found ~/.bashrc but no ~/.bash_profile, ~/.bash_login or ~/.profile.

This looks like an incorrect setup.
A ~/.bash_profile that loads ~/.bashrc will be created for you.

所以git创建了这个.bash_profile:

$ cat ~/.bash_profile
# generated by Git for Windows
test -f ~/.profile && . ~/.profile
test -f ~/.bashrc && . ~/.bashrc

这项工作是做什么的。

或者,您可以再次删除.bashrc并将cd命令放入.bash_profile:

$ rm ~/.bashrc
$ echo "cd Source/Repos" >~/.bash_profile

$ cat ~/.bash_profile
cd Source/Repos

完成此操作后,您可以关闭窗口并使用桌面快捷方式重新打开它,提示符将告诉您您的位置现在位于您想要的位置 - 看起来就像我的情况:

Administrator@raptor1 MINGW64 ~/Source/Repos
$

答案 14 :(得分:1)

必须是cd d:/work_space_for_....

没有:它对我不起作用

答案 15 :(得分:1)

Windows 用户的另一个解决方案是将Git Bash.lnk文件复制到您需要开始的目录并从那里启动。