Git Bash and Composer - Running without an extension In some cases, you may need to run Git Bash and Composer without their file extensions. This can be useful if you want to execute a command quickly without typing the full file name. To achieve this,

13 浏览
0 Comments

Git Bash and Composer - Running without an extension In some cases, you may need to run Git Bash and Composer without their file extensions. This can be useful if you want to execute a command quickly without typing the full file name. To achieve this,

我已经安装了适用于Windows的Git,并配置了仅在Git Bash中使用Git命令。所以,我有一个名为composer.cmd的文件,它与composer.phar放在一起,内容如下:

@echo off
php C:\bin\composer.phar %*

然而,我仍然需要在命令的末尾输入.cmd.phar才能使其识别。扩展名.CMD存在于$PATHEXT中,但似乎并不重要。因为我忘记了扩展名而导致不得不重新输入命令打断了我的节奏,而且我能够运行没有扩展名的.exe文件似乎是非常武断的。

我想知道是否有一种方法可以强制它接受不需要指定扩展名的.cmd文件。而且我没有使用MSI包来安装Composer。

0
0 Comments

问题:Git Bash和Composer在没有文件扩展名的情况下无法运行

原因:没有正确配置Composer的运行环境,导致Git Bash无法识别Composer命令。

解决方法:在与composer.bat文件相同的目录下创建一个名为composer的新文件,不带扩展名。在该文件中包含以下代码:

cmd "/C composer.bat $@"

完成上述操作后,Git Bash应该能够正确运行Composer命令。

代码如下:

# 在与composer.bat文件相同的目录下创建一个名为composer的新文件,不带扩展名
touch composer
# 编辑composer文件,添加以下代码
cmd "/C composer.bat $@"
# 保存文件并退出编辑器
# 在Git Bash中运行Composer命令
composer -V

以上操作将解决在Git Bash中无法运行Composer命令的问题。

0
0 Comments

问题出现的原因是在使用Git Bash时,无法直接运行没有扩展名的.bat或.cmd文件。解决方法是在文件名前面添加"cmd /C",或者将.bat/.cmd文件包装在一个shell脚本中。

在CMD会话中,可以使用.bat和.cmd文件的扩展名来调用脚本。但是在Git Bash会话中,需要在文件名前面添加"cmd /C"。

示例代码如下:

git bash
cmd "/C myscript"
# 或者
cmd //c myscript

如果想要直接运行没有扩展名的脚本文件,可以将.bat/.cmd文件包装在一个shell脚本中。示例代码如下:

$ cat myscript.sh
cmd << EOD
myscript $@
EOD
$

通过上述方法,可以直接运行没有扩展名的脚本文件,而不需要添加扩展名。在执行完脚本后,会回到Git Bash会话中。

如果以上方法仍然无法解决问题,可以尝试其他解决方法。

0