问题描述
我正在使用cygwin从命令行启动PHPStorm。一切正常,但是要做到这一点,我必须先运行
crntproj=$(cygpath -w $PWD)
然后运行
PHPstorm.bat $crntproj
我更希望能够简单地运行PHPstorm.bat $PWD
,除非那是行不通的。
因此,我编写了如下的bash函数并将其添加到我的bashrc中:
function winpath {
path=$(cygpath -m $PWD)
echo $path
}
奇怪的是,这返回了看起来正确的文件夹
但是当我运行PHPstorm.bat winpath
时,PHPStorm试图打开C:/user/project/winpath
当然不存在。
我现在已经尝试将-w
用于Windows和-m
用于混合。没关系。我还在路径的末尾连接了一个正斜杠,以告诉PHPStorm它是一个文件夹而不是文件。这也没有解决问题。
任何人都可以解释我所缺少的吗?
解决方法
好的,请将以下内容放在.bash_profile
中,它现在可以正常使用
function winpath {
path=$(cygpath -m $PWD)
echo $path
}
现在就运行
phpstorm.bat $(winpath)
为了方便起见,我甚至做了几个别名
alias pstorm='phpstorm.bat'
alias pstorm-openProj='pstorm $(winpath)'
所以现在我可以在项目文件夹中运行pstorm-openProj
我认为可以通过在〜/ .bash_profile文件中设置环境变量,然后重新启动cygwin终端窗口来解决此问题。
将此行添加到您的.bash_profile文件中:
export crntproj=$(cygpath -w $PWD)
我目前无法对其进行测试,但是目标是每次启动bash终端时都要设置环境变量。