Windows git-bash.exe无法运行批处理文件

当创建如下所示的批处理文件commit.bat并从命令提示符处执行它时,将执行第三行“ git-bash.exe”,并且git-bash将启动。但是,第4行或更高版本的“ cd c:/ home / sol-server / system / Upfiles / work”未在git-bash上执行,这给我带来了麻烦。

@echo off
cd C:\Program Files\Git
git-bash.exe
cd c:/home/sol-server/system/Upfiles/work
git add .
git commit -a -m "commit from bat"

由commit.bat启动git-bash之后,目标是在git-bash上从第4行执行命令。哪一部分错了...

---------------------------------------------------------------------------------

这是因为git-bash是命令解释器,但是执行命令解释器时,它会重复从标准输入中逐一输入命令并执行它们。

如果使用-c执行单个命令

git-bash -c'回声你好'

但是,由于窗口(mintty)在执行时显示了片刻,所以我认为它不好用。

如果您确实要从命令提示符启动git-bash,请为git-bash准备一个单独的脚本

 

git-bash commit.sh

好像很好 例如,如果将commit.sh放在c:\ mytools \ commit.sh中

 

提交


@echo off
cd C:\Program Files\Git
git-bash c:\mytools\commit.sh
c:\ mytools \ commit.sh
 

#!/usr/bin/bash
cd /c/home/sol-server/system/Upfiles/work
git add .
git commit -a -m "commit from bat"
echo 'hit enter key to terminate' ; read

在最后一行中回显和读取的原因是,如果不包括它们,则git commit执行完成后,tty commit屏幕将立即关闭,并且您将无法看到结果。

我想您想从命令提示符处开始,但是为了方便起见,每次执行脚本时都会显示薄荷窗口,因此从一开始就对git-bash进行操作更方便我觉得很好。在这种情况下,


./commit.sh


可以通过删除上述commit.sh的最后一行,然后在git-bash上执行它。

转载:https://teratail.com/questions/100262

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值