当前位置: 首页 > 知识库问答 >
问题:

在ConEmu/Cmder中使用git-bash加载Docker脚本

桂和同
2023-03-14

我看到窗口上Docker的快捷方式是:

C:\Program Files\Git\bin\bash.exe" --login -i "C:\Program Files\Docker Toolbox\start.sh"  

我在< code>Cmder/ConEmu中使用< code>git-bash。

当我在控制台中启动时,我想执行这个脚本,所以我将所有终端都放在一个程序中的选项卡中,而不是放在这里的git bash和那里的docker中。

我很难找到正确的方法来得到这个。要运行的sh文件。我发现报价不同于从windows快捷方式运行新的终端窗口。

我试过了:

"C:\Program Files\Git\bin\bash.exe" --login -i "C:\Program Files\Docker Toolbox\start.sh""

退货:

未安装VirtualBox或Docker Machine。请重新运行工具箱安装html" target="_blank">程序,然后重试。
看起来出了问题。按任意键继续…

C:\Windows\System32\cmd.exe /c ""C:\Program Files\Git\bin\bash.exe" --login -i -- C:\Program Files\Docker Toolbox\start.sh"

退货:

bash: C:\Program:没有这样的文件或目录

当前目录:

C:\Code\cmder_mini

要执行的命令:

"C:\Windows\System32\cmd.exe" /c ""C:\Program Files\Git\bin\bash.exe" --login -i -- C:\Program Files\Docker Toolbox\start.sh"

ConEmuC:Root进程活动不到10秒,ExitCode=127。
按Enter或Esc关闭控制台…

共有3个答案

伍玮
2023-03-14

我发现了一个很好的解决方案,可以在我打开的任何cmder终端中正常使用docker。

只需将此代码粘贴到cmderRoot/config/user-profile.cmd

FOR /F "tokens=* USEBACKQ" %%F IN (`docker-machine status`) DO (
  SET machine_status=%%F
)


IF NOT %machine_status% == Running (
   cmd /c "docker-machine start default"
) 

FOR /F "tokens=*" %%i in ('docker-machine env') do @%%i
薛欣荣
2023-03-14

git bash.exe应该继承您的%PATH%作为$PATH

但docker工具箱Windows启动。sh还取决于应在调用之前设置的其他环境变量:

  • DOCKER_MACHINE路径/to/DOCKER机器。exe(包括exe本身)
  • VBOX_INSTALL_PATH:VirtualBox的路径

在调用ConEmu和调用您的第一个命令之前,请确保先定义这些。

潘英豪
2023-03-14

我找到了一个非常简单的解决方案:只需将Cmder/ConEmu设置为控制台应用程序的默认终端。之后,Docker Quickstart Terminal将直接打开Cmder/ConEmu,而不是使用本机Windows CMD。:)

您将在“设置”对话框中找到该设置(赢得Alt P或右键单击窗口标题栏)。然后转到:

集成-

选中“强制ConEmu作为控制台应用程序的默认终端”复选框,然后按“保存设置”。

 类似资料:
  • 问题内容: 我有一个python脚本,该脚本在运行时会在终端上记录信息,我想将此记录信息发送到文本文件, 为了实现这一点,我正在插入文件 在文件末尾,我放入 问题是当它调用第一个命令时,它将终止脚本, 提前感谢我如何做这项工作的任何建议 问题答案: 问题在于,直到退出产生的外壳程序才返回,这时您的Python脚本将恢复。 执行所需操作的最简单方法是使用Python脚本作为参数来调用自身。代替 您将

  • 问题内容: 的 备用屏幕 用于通过像vim,HTOP,屏幕,alsamixer中,以下,…它像一个不同缓冲液中的终端的内容的,其消失的应用程序退出时,所以整个终端许多“用户交互式”应用终端恢复后,看起来应用程序没有输出任何东西。 我想在自己的shell(bash)脚本中实现完全相同的功能,除了它不必具有可移植性。我只会使用linux和基于xterm的终端仿真器;但解决方案应尽可能使用类似的方法。但

  • 本文向大家介绍使用批处理脚本在特定目录中启动Git-Bash窗口,包括了使用批处理脚本在特定目录中启动Git-Bash窗口的使用技巧和注意事项,需要的朋友参考一下 问题描述 平时想要在项目目录中输入git命令,我需要先打开git-bash窗口,然后还要cd到项目目录中。这挺麻烦的。我现在想: 通过批处理脚本,直接在某个目录中启动git-bash窗口。 实现 在项目目录下,创建一个批处理脚本(Sta

  • 问题内容: 我的目录仅包含两个文件,并且: 在读 并且仅包含 在成功生成: 但是,如果尝试这样做,则会出现错误: 是什么原因造成的?(我记得以类似的方式在基于图像的脚本中运行脚本,所以也许它是Alpine特有的)? 问题答案: Alpine附带ash作为默认外壳,而不是。 所以你可以 有一个shebang将/ bin / bash定义为sayhello.sh的第一行,因此您的文件sayhello.

  • 因此,我遵循了本教程,学习了如何使用Windows CMD为github设置SSH,在我使用 我在哪里得到的 即使我运行,我也会收到预期的消息,告诉我我已通过身份验证。 在搔了一会儿脑袋之后,我决定在git bash上试试。 我注意到的第一件事是跑步 在git bash中,我得到了但是当我在Windows CMD上运行相同的命令时,我得到了所有的SSH密钥? 因此,在git bash中添加ssh密

  • 问题内容: 我正在尝试从我的Perl程序中运行Bash命令。但是Perl似乎使我的Bash $ PWD环境变量与Perl变量混淆了。 我如何才能将其全部读取为字符串? 这就是我要运行的 这些反引号在Bash中运行第二行。使用System()会产生相同的问题。 有任何想法吗? 问题答案: 这里有两个查询,关于使用Bash变量和运行外部命令。 Perl中有哈希,带有环境变量 但是,通常最好在脚本中使用