jjzjj

java - 从 Java 应用程序执行 native DOS 命令

我有兴趣从Java应用程序执行cmd.exemove命令。我知道如何从Java内部调用外部进程。StackOverflow中有100个关于这一点的问题。我想不通的是命令行应该是什么样子。例如,在DOS窗口中,这是我键入的命令:movedirAdirB并且目录dirA被移动到目录dirB。正是我想要做的。由于需要太多上下文的原因,并且会影响问题,在我所关心的特定上下文中,纯Java解决方案不是一个选项。(哦,在庞大而复杂的遗留系统中操作的乐趣!)我从java调用的外部系统命令是什么?看起来它应该只是:"cmdmovedirAdirB"但是,这对我来说失败了。我熟悉这个question,但

windows - 当路径没有目录分隔符时会发生什么?

C:WProgramFiles有人知道这样的位置吗?在程序中是如何处理的,和\一样? 最佳答案 带有驱动器号的路径,然后相对于该驱动器号的当前目录解析相对路径。Windows和MS-DOS系统分别跟踪每个驱动器号的当前目录。例如:G:\>dirc:VolumeindriveCisSystemVolumeSerialNumberisA09A-AD9CDirectoryofC:\06/12/200802:44PM0AUTOEXEC.BAT06/12/200802:44PM0CONFIG.SYS08/25/200802:22PMDocum

windows - 创建批处理文件以识别事件的 Internet 连接

我正在尝试编写一个批处理文件,如果netsh命令生成的列表中有多个,则允许用户选择他们的事件Internet连接,然后更改DNS设置。但是,在执行脚本之前,当已知选项数量时,我不知道如何使用choice命令。在不使用数组的情况下,我试图创建一个字符串变量“choices”来保存表示数字选择的字符串并将其传递给choices命令,但我无法让它工作。我不禁觉得一定有一种更简单的方法可以做到这一点,但我的研究并没有证明这一点。我们将不胜感激。@echooffsetlocalSetactive=0Setchoices=1setConnnectedNet=FOR/F"tokens=2,3*"%%

windows - 当路径包含空格时,如何使用通配符从 MS DOS 批处理文件中删除多个文件?

假设我有一个包含以下文件的目录:测试.bat测试a.txt测试_b.txtTest_v1.zipTest_v2.zipTest_v3.zip我想安静地删除所有Test_v*.zip(没有错误消息记录到屏幕上)。我可以使用以下脚本实现此目的:@ECHOOFFSETOLD_ZIPS=^C:\Tmp\Test_v*.txt;^C:\Tmp\Test_a.txtECHODeletingthefollowingfiles:%OLD_ZIPS%FOR%%YIN(%OLD_ZIPS%)DO(IFEXIST%%Y(ECHODeleting%%YDEL/Q%%Y))PAUSE这很好用:Deletingt

windows - 批处理文件 - 如何检查是否设置了 bin 文件夹的路径

我的批处理文件我想检查是否设置了以下位置的路径C:\ProgramFiles(x86)\WindowsInstallerXMLv3.5\bin在系统变量或用户定义变量中的任何变量中我的需要是使用bin文件夹的内容;如果用户没有按照上面引用的方式安装但做了类似C:\WindowsinstallerXML\bin或者D:\WindowsInstaller\bin 最佳答案 如果你想为字符串检查每个定义的变量,这就是方法。如果你想专门检查用echo%path%替换set的路径变量也可以。set|find"C:\ProgramFiles(x

windows - 直接从dos命令行打印pdf文件

我正在尝试在windowsxp中从dos打印pdf文件。C:\>printc:\dos.pdf/D:"\\jayaprada-pc\HPLaserJet1018"C:\dos.pdfiscurrentlybeingprinted它说docisbeing被打印出来。但是我的打印机没有打印出来。它在打印机后台处理程序窗口中显示文档。从adobereader正常打印时,打印正常。我的配置有什么问题。实际上我想从命令行打印pdf文档,所以它不会弹出打印机属性。向我推荐任何其他可用于从Windows命令行打印的替代工具或第三方工具。 最佳答案

windows - DOS/批处理文件在出错时跳出 for 循环

我正在编写一个批处理脚本,用于检查目录中PDF文件名的长度。如果文件名的长度超过3个字符,那么我需要跳出for循环。这应该发生在第一个问题文件中。我的问题是我似乎无法找到跳出循环的方法。这是我的代码和我得到的输出。我的问题是我用来设置在0和1之间的errorCnt变量永远不会更改为1,即使我正在设置它也是如此echoSTARTINGSCRIPTsetlocalseterrorCnt=0for%%ain(test*.pdf)do(echo%%~aSET"fullname=%%a"SET"name=%%~nacall:strlenresultnamecall:finalresultecho

windows - 与时间相关的中断在 Windows 中的汇编程序中不起作用?

我想用汇编语言创建一个延迟几秒钟的小程序。我使用的是WindowsXPSP3,打开DOS窗口,然后运行​​debug.exe我在那里输入了这个简短的汇编程序:MOVCX,3DMOVDX,0900MOVAH,86INT15中断15h中的功能86h,执行延迟,延迟的持续时间以CX、DX为单位,以微秒为单位。所以如果我想延迟4秒,那么它是4,000,000microseconds=3D0900h,这就是我在CX,DX中输入的内容。运行这个短程序,不幸的是没有执行任何延迟,它立即退出。然后我尝试了另一个中断函数:函数号0,在中断1Ah中,将PC的时钟计数返回到CX,DX。每个刻度为1/18.2

windows - 网络中断时打印到本地共享打印机

我有一些遗留应用程序逻辑,使用DOS复制命令将文件发送到连接的打印机:复制fileToPrint\myLocalComputerName\printerShareName问题在于,即使应用程序在物理连接到打印机的计算机上运行,​​因为它使用网络“共享”,它也需要网络可用。如果网络不可用,DOS会抛出一个网络不可用错误。我如何编写代码,这样我就没有网络依赖性?(最好不要重新设计整个基于文件的打印逻辑) 最佳答案 找到以下文章,在网络不可用时使用环回网络适配器访问本地共享。http://geekswithblogs.net/dtotzk

windows - 在批处理文件中编写循环的语法

我正在尝试为我经常执行的任务编写一个小的批处理文件。我以前从未使用过for,这是我第一次尝试这个。这是我到目前为止所带来的:for/f%iin('ctfind.-verlbtype(%1)-print')doctlsvt-g%i基本上,它会尝试查找具有给定cleracase标签的所有文件,然后显示这些文件的版本树。问题出在%1中。但是,当我有时尝试运行它时,它会给我一个错误,提示-print)不是预期的,或者有时它只是在命令提示符下打印此命令。我猜它在多个括号之间变得困惑。有什么线索可以解决这个问题吗? 最佳答案 尝试在for中引用