【问题标题】:How to covert rm command for Windows environment?如何为 Windows 环境转换 rm 命令?
【发布时间】:2021-10-17 04:06:41
【问题描述】:

配置 Reporters 的 Cypress 手册包含 rm 命令,该命令在 Windows 中不起作用,即

rm cypress/results/* || true

我相信这是关于在 Windows 环境中使用 Linux 命令的手动错误,所以问题是如何在 Windows 中完成?此外,我想在我相信使用 Linux 核心的 Docker 容器中使用包含此命令的配置文件。所以另一个问题是,如果我为 Windows 转换命令,我可以在我的 Docker 容器中使用这个文件吗?有人可以指出在这两个操作系统上使用此命令的正确方法吗?这是包含此命令的赛普拉斯手册的链接https://docs.cypress.io/guides/tooling/reporters#Examples

【问题讨论】:

  • 您可以使用del 命令,或者直接在资源管理器中打开目录并删除其中的内容。
  • 是的,我试过了,但它不起作用。正如我所说,该命令必须以某种方式转换为与 Linux 命令相同。用 del 简单替换 rm 不起作用
  • 你能改用bash吗?它适用于窗户。另一个不错的选择 WSL。超级推荐用于 Javascript 开发。
  • 是的,我同意 WSL 是一个很棒的功能,但正如我所说,我必须在配置文件中使用该命令。它不适合手动使用。还有一件我在这里错过的非常重要的事情。我需要使用rm-r 选项,这使得delrm 不同,因为del 没有这样的选项,不仅允许递归删除文件,还允许递归删除目录
  • 是的,但是您正在运行来自 cmd.exe 的所有内容。如果您切换到 WSL,您可以在 bash 中运行所有内容,并且像 rm 这样的命令将完全按照您的预期使用。

标签: linux windows docker command-line cypress


【解决方案1】:

rmdir可以在windows中使用

"delete:reports": "rmdir /S /Q cypress\\results && mkdir cypress\\results",

我认为这不适用于 docker。


跨平台,

yarn add -D rimraf mkdirp

"delete:reports": "rimraf cypress/results && mkdirp cypress/results",

【讨论】:

  • 太棒了!谢谢!抱歉,您能否澄清一下跨平台使用情况?在我的配置文件"delete:reports": "rimraf cypress/results && mkdirp cypress/results"中使用这个命令就够了@
  • 我认为是这样,但还没有在 linux 上尝试过 - 可以在 Windows 上运行。从这个问题How to run rm command on windows 10
  • 进一步说明,是的,因为这些是使用 nodejs 的包,它具有内置的跨平台。
  • 不客气。谢谢你的提问,我刚刚开始 docker - 也需要它。
猜你喜欢
  • 2017-10-19
  • 1970-01-01
  • 1970-01-01
  • 2011-05-24
  • 2016-12-14
  • 1970-01-01
  • 2018-04-02
  • 2021-11-30
  • 2010-09-24
相关资源
最近更新 更多