【问题标题】:Creating batch file launching .phar with alias使用别名创建批处理文件启动 .phar
【发布时间】:2014-12-14 20:56:29
【问题描述】:

我目前正在试验 WP-CLI (http://wp-cli.org) - 我终于设法通过下载/移动到 PATH 使其在我的基本命令行上运行 变量目录(即 C:\xampp\php),然后更新我的 PATHSPEC 以包含 .PHAR。

我已将原始文件从 wp-cli.phar 重命名为 wp.phar,以便能够在我的 cmd.exe 中将其作为 wp 引用。

在此方法之前,我在 Git Bash 安装中使用 CURL 和 chmod 安装了 wp-cli,然后将文件重命名为 wp(不带扩展名)并将包含文件的路径添加到 PATH 变量中。这导致 .PHAR 文件可以在 Git Bash 中工作,但不能在命令行上工作。

我的问题:

每当我尝试在本机 CLI 中使用我的 wp.phar 时,我都会收到一个 php 错误报告 - 它会识别该命令并显示一个建议列表(通常在语法不完整或不正确时给出)。

我该如何开始解决这个问题?

1 - 我试图在我的 Git Bash 目录中查找一个 git 批处理文件,以查看是否可以找到我缺少但没有骰子的依赖项。

2 - 我的 Git Bash 现在无法识别wp 命令,我现在需要参考wp.phar,然后在之后添加任何子命令/参数。但是使用 Git Bash CLI wp.phar 不会导致错误

【问题讨论】:

  • 那么您调用的wp 文件的内容是什么?是原始的wp.phar 还是您创建了.bat-file 包装器?
  • 原始 .phar 文件。我基本上是在尝试创建等效于 sudo chmod +x wp-cli.phar 然后 sudo mv 到 usr/bin/wp。这应该然后将原始 wp-cli.phar 设置为终端上的全局(在 Linux 下)。

标签: php wordpress bash command-line-interface


【解决方案1】:

几个月后我找到了解决办法。

  1. 确保将您的 PHP 根文件夹路径 和包含您的 phar 文件的文件夹路径添加到 Windows PATH 环境变量中(以便我们只使用文件名来引用它们)。
  2. CMD 行选项(以管理员身份运行):

    • assoc .php=phpfileassoc .phar=pharfile

  • 接下来是添加打开此文件的程序。添加 ftype 命令可以让我们在不使用php 的情况下打开 .php/.phar 文件。

    ftype pharfile=php.exe %1 %*(%1 是被调用文件的占位符,%* 指的是许多需要输入的任何其他参数)。

终于

关键问题是让 .phar 脚本在命令行中执行,因为 Windows 最终会尝试在其打开方式对话框中打开这些文件

所以我所做的是使用此命令将我的 .phar 包装在一个批处理文件中(与 phar 在同一文件夹中

echo php "%~dp0wp-cli.phar" %* > [name of file].cmd

然后我将这个文件作为 [文件名] 运行,并带有任何参数,它像往常一样工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-02-09
    • 2013-07-21
    • 2017-08-13
    • 2013-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多