powershell 为什么调用.bat文件的速记符号在PhpStorm的控制台中不起作用

gt0wga4j  于 11个月前  发布在  Shell
关注(0)|答案(1)|浏览(153)

我使用的是PHP和Yii框架,所以我需要在每个命令中都调用php yii。为了使这个更方便,在this example之后,我创建了run.bat文件,内容如下:

@echo off
php yii %*

字符串
我将它放在%SystemRoot%c:\WINDOWS\)中,因此可以从任何路径在系统范围内访问它。
令我非常惊讶的是,我发现了以下几点:
1.命令行(Windows 11中的终端):runrun.bat都可以正常工作。
1.Windows PowerShellrunrun.bat都可以正常工作。
1.PhpStorm内部的终端:必须使用run.bat,因为run不工作:


的数据
同时phpyii都可以像我一样在PhpStorm中工作,我不会被迫执行php.exeyii.bat
我错过了什么?我应该对文件内容或文件位置(或者PATH系统变量)做什么更改才能在PhpStorm中只使用run

w9apscun

w9apscun1#

根据注解和this article,正确的解决方案是:
1.选择%PATH%系统变量中列出的文件夹(在我的例子中是C:\XAMPP\php)。
1.在此文件夹中放置一个名为y.cmd的文件,内容如下:

@php.exe yii %*

字符串
1.将一个名为y的文件放在同一个文件夹中,内容如下:

#!/bin/bash
php.exe yii $@


从这一点开始,应该可以从给定系统中的任何位置调用yy.cmd,并使用 cmd 命令行,Windows终端,Git Bash(包括PhpStorm)等。
顺便说一句:在上述脚本中没有php.exe的路径,因为yy.cmd脚本与php.exe文件一样好,都放在同一个文件夹中。如果这些文件放在不同的文件夹中,则需要使用完整路径。

相关问题