java processbuilder的Windows命令通配符

java processbuilder的Windows命令通配符,第1张

概述java processbuilder的Windows命令通配符

我想从Java调用windows命令。

使用下面的行工作正常:

ProcessBuilder pb = new ProcessBuilder("cmd.exe","/C","find "searchstr" C://Workspace//inputfile.txt");

但是我想find该位置下的所有文本文件中的string,

ProcessBuilder pb = new ProcessBuilder("cmd.exe","find "searchstr" C://Workspace//*.txt");

但是它不起作用,Java控制台中没有输出。

如何从angular色类别的范围中排除angular色?

使用gcc -c * .c编译源文件到目标文件中

移动具有特定名称的所有文件(sorting)windows 8

双星号通配符是什么意思?

在parsing(即扩展)通配符时停止linux shell

有什么解决scheme?

windows 2003上的通配符子域名安装

为什么我的pipe道中的一个*在Perl中不能在windows上打开?

在通配符的情况下,创build一个带有子域名称的Apache SetEnvvariables

linux路由添加子域通配符-host * .domain.com

与通配符rm显示我taskset帮助输出

它看起来像find返回一个错误,因为路径名中的双正斜杠。 如果您将它们更改为反斜杠(在Java字符串中将它们加倍转义),那么它将成功。

您可以使用类似于以下内容的代码检查错误输出和find的退出代码(成功时为0,发生错误时为1):

ProcessBuilder pb = new ProcessBuilder( "cmd.exe","find "searchstr" C://Workspace//inputfile.txt"); Process p = pb.start(); inputStream errorOutput = new BufferedinputStream(p.getErrorStream(),10000); inputStream consoleOutput = new BufferedinputStream(p.getinputStream(),10000); int exitCode = p.waitFor(); int ch; System.out.println("Errors:"); while ((ch = errorOutput.read()) != -1) { System.out.print((char) ch); } System.out.println("Output:"); while ((ch = consoleOutput.read()) != -1) { System.out.print((char) ch); } System.out.println("Exit code: " + exitCode);

总结

以上是内存溢出为你收集整理的java processbuilder的Windows命令通配符全部内容,希望文章能够帮你解决java processbuilder的Windows命令通配符所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1270372.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存