【问题标题】:How to remove svn folders over FTP on Windows hosting如何在 Windows 主机上通过 FTP 删除 svn 文件夹
【发布时间】:2011-01-27 11:57:56
【问题描述】:

我不小心将大部分文件夹树从我的 SVN 工作副本通过 FTP 复制到了我的共享 Windows 网络主机。

该站点现在到处都是 .svn 目录,我需要一些清理它们的方法。我对服务器的唯一访问是通过 FTP,或者在服务器上运行脚本。

是否有任何人有可以远程运行的脚本,以通过 FTP 从我的开发机器中删除文件(任何语言 Windows/Linux 都可以)或 ASP、ASP.net 或 PHP 中的脚本我可以直接在Windows 服务器要删除这些目录吗?

【问题讨论】:

  • 您说任何语言 Windows/Linux 都可以,我猜 bash 适合。请在问题中明确说明您的期望,不要投反对票。
  • @pajton - 我相信我在问题的第一行明确表示我的主机正在运行 Windows。再往下,我提到一个解决方案可以直接在服务器上以安装的多种语言运行,也可以通过任何配置的 FTP 运行 - 所以在 Linux 上运行但可以通过 FTP 与 Windows 主机交互的 shell 脚本很好,但是 shell期望在同一台机器上运行的脚本不是。我已经编辑了我的问题,希望能更清楚地说明这一点。

标签: windows svn ftp directory delete-directory


【解决方案1】:

怎么样:

for /f “tokens=* delims=” %%i in (’dir /s /b /a:d *svn’) do ( rd /s /q “%%i” )

取自http://www.axelscript.com/2008/03/11/delete-all-svn-files-in-windows

关于您上面的陈述,请尝试使用以下内容在 php 中运行它

<?php
echo `for /f “tokens=* delims=” %%i in (’dir /s /b /a:d *svn’) do ( rd /s /q “%%i” )`;
?>

【讨论】:

  • 正要尝试这个 - 你的意思是 exec() 而不是 echo 吗?
  • 两者都试试,我更喜欢 echo 因为你“理论上可以看到 shell 返回的输出”
  • 刚开始尝试这个,我似乎无法让它工作。如链接中所述,我用 ' 和 " 替换了智能引号,但它只打印字符串。当我使用 exec() 或 system() 时,我根本看不到任何效果。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-10-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多