您好,我想将以下命令的输出收集到某个变量中。我该怎么做?
type somefile.txt | find /v "irritating string"
实际上,我想将上述命令的输出写入其他文件夹中的其他文件。
您好,我想将以下命令的输出收集到某个变量中。我该怎么做?
type somefile.txt | find /v "irritating string"
实际上,我想将上述命令的输出写入其他文件夹中的其他文件。
您的命令可能会产生多行输出。Windows 批处理没有方便的方法将多行命令输出捕获到单个变量中。FOR /F 命令可用于单独处理每一行,此时您可以将每一行连接成一个变量(最多为 ~8191 字节值长度限制),或者您可以创建一个变量数组。
键入FOR /?
或HELP FOR
从命令提示符获取有关 FOR 命令的更多信息。
但是由于您想真正捕获文件中的输出,因此解决方案非常简单。
如果你想创建一个新文件
type somefile.txt | find /v "irritating string" >"c:\somePath\newFile.txt"
如果要将输出附加到现有文件
type somefile.txt | find /v "irritating string" >>"c:\somePath\existingFile.txt"
如果该文件尚不存在,则会创建该文件。