首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在批处理文件中使用PHP -W标志

问在批处理文件中使用PHP -W标志
EN

Stack Overflow用户
提问于 2010-01-03 04:58:16
回答 1查看 288关注 0票数 1

我正在尝试使用PHP CLI中提供的-W标志来删除.php文件中的所有空格和代码注释。我使用一个批处理文件递归地遍历项目中的每个php文件。批处理命令如下所示:

代码语言:javascript
复制
FOR /F "tokens=*" %%G IN ('DIR /B /A-D /S *.php') DO "%php-exe-path%/php.exe" -w %%G > %%G 

这只会生成空白的.php文件(使用'>‘重定向器),但是使用附加重定向器('>>')可以很好地工作。我不确定这是PHP锁定文件的问题还是我的批处理命令的问题。

有人能帮上忙吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-01-03 05:16:24

通常:不要再通过管道将处理文件的命令输出到文件中。而不是通过管道连接到临时文件,删除旧文件并将临时文件重命名为旧名称。类似于下面的内容:

代码语言:javascript
复制
FOR /F "tokens=*" %%G IN ('DIR /B /A-D /S *.php') DO (
    "%php-exe-path%/php.exe" -w %%G > %%G.temp
    del %%G
    ren %%G.temp %%G
)

附注:请不要在dir的输出上使用for /f,因为这会引入一些微妙但令人讨厌的错误。取而代之的是使用适当的方式迭代文件,这只是普通的for,并使用/r开关递归:

代码语言:javascript
复制
FOR /R %%G IN (*.php) DO (
    "%php-exe-path%/php.exe" -w %%G > %%G.temp
    del %%G
    ren %%G.temp %%G
)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1992823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档