我有一个包含一些 linux 命令的文件,我想在 Windows 上运行(DOS 命令)。命令是:
cat tmp/$id/index.html | sed -e 's/ID/$id/g' > a;mv a tmp/$id/index.html
MS-DOS 中的类似命令是什么?谢谢!
问题是本机没有与 sed 等效的命令。从我的角度来看,你有两个选择。要么创建一个执行你想要的 vb 脚本(虽然它不会占用 1 行 - 我猜更像是 10-15),或者使用像GnuWin32这样的东西,它让你可以选择在 Windows 终端中运行 unix 命令。
您可以考虑使用 powershell 来做大致相同的事情。它支持cat
andmv
你可以sed
通过使用%{_ -replace "expression", "replace"}
. 详细信息在这里http://blogs.msdn.com/b/zainnab/archive/2007/07/09/grep-and-sed-with-powershell.aspx
或者考虑使用类似 linux 的命令提示符,比如 bash,它应该可以通过 cygwin 获得
我认为这在“裸”命令行(如您所说的 DOS 命令)中是不可能的,因为 cat 和 sed 是单独的实用程序。如果您想将此脚本从 Linux 命令外壳移植到 Windows 命令行,我建议您下载并安装CygWin
DOS 本身不支持该功能。您可以尝试使用此处提供的用于 DOS 的 SED 端口。如果您可以获得Powershell,这是一个选择。这是一个在 Powershell 中使用 grep/sed的示例。
MS-DOS 没有这样的命令。