Articles of batch file

batch file从SFX运行时的行为不同

所以我写了一个batch file,将客户端转换成云服务,我看到了一些奇怪的行为。 所以这基本上寻找一个特定的文件夹,是否存在它使用GOTO继续前进。 当我使用WinRAR将其压缩到SFX并指示它运行batch file时,它从不检测文件夹,但是,当我运行batch file本身时,总是检测文件夹,无论是否存在。 我一直试图弄清楚这几天,我只是不明白为什么会发生这种情况。 @ECHO Off CD %~dp0 Goto DisableLocal :DisableLocal IF EXIST "%ProgramFiles%\Server\" ( GOTO Server ) ELSE ( GOTO Config )

在控制台上打印通过subprocess.check_output调用的可执行文件,但不返回结果

在Windows机器上,我试图从Python调用一个外部可执行文件并收集它的输出以进一步处理。 由于必须在调用可执行文件之前设置本地pathvariables,因此我创build了一个批处理脚本 首先调用另一个脚本来设置%PATH%和 然后使用给定的参数调用可执行文件。 * .bat文件如下所示: @echo off call set_path.bat @echo on executable.exe %* 和这样的Python代码: print("before call"); result = subprocess.check_output([batfile, parameters], stderr=subprocess.STDOUT, shell=True); print("after call"); print("——- ——- ——- printing result ——- ——- ——- "); print(result); print("——- ——- ——- /printing result ——- ——- ——- "); 现在,从技术上讲,这是有效的。 可执行文件被调用的目标参数,运行,完成并产生结果。 我知道这一点,因为他们被嘲笑地显示在Python脚本运行的控制台中。 但是,结果string只包含批处理脚本返回的内容,而不包含可执行文件输出: 打电话之前 你好? 是的,这是executable.exe 打完电话后 ——- ——- ——-打印结果——- […]

用windowsbatch file只读取txt文件中的x行

如何从a.txt文件中只读取X行? 该文件包含一个目录的所有名称,我只想读取x行。 X可以是1到99之间的数字

* .bat和* .cmd文件有什么区别?

可能重复: Windowsbatch file:.bat vs .cmd? 嗨, 我正在学习Windows批处理编程,并遇到这个问题: .bat和.cmd文件有什么区别? 如果他们是相同的,为什么需要其中2? 顺便说一句, command.com和cmd.exe有什么区别?

批量转换是否完成?

我无法find是否是非常好奇,如果它不合格,它缺乏资格的function? 我已经做了一个相当数量的批次,并没有看到任何明显的能力滑倒。

如何检查batch file是否为空

谷歌有几种方法来检查我的文件是否为空,但我需要做相反的事情。 If (file is NOT empty) do things 我将如何批量处理?

批量删除x天以前的FTP文件

为本地发现了几个解决scheme,但是需要一个用于FTP的操作: 我有一个每日批处理脚本在本地备份MySQL数据库,但我也ftp他们到备份服务器。 在本地,我正在使用forfiles删除超过14天的文件: forfiles -p "C:\whatever" -s -m *.* -d 14 -c "cmd /c del @path"` 一旦最新的备份文件被转储到运行在Windows Server 2008 R2上的FTP服务器上,我就想在FTP上做同样的事情。 如何扩展我的batch file来执行此操作? cd\[path to directory where files are saved] echo off echo user [ftp username]>ftpup.dat echo [ftp password]>>ftpup.dat echo binary>>ftpup.dat echo put [FullBackup.%backupdate%.zip]>>ftpup.dat echo quit>>ftpup.dat ftp -n -s:ftpup.dat [myserver.com] del ftpup.dat

我应该如何传递密码(包含特殊字符)作为命令行参数?

我有一个部署脚本,我必须通过LDAP密码作为cmd参数。 实际密码: foo\$ser"ver\\ 1 (包含三个空格字符:开头,前1和后1 ) 例如 …bin>deployment.bat LDAPPassword= foo\$ser\"ver\\ 1 注意:如开始处所示,密码中有空格。 deployment.bat调用上述参数作为parameter passing给的类。 问题是这个类收到两个不同的论点: args[0]= foo\$ser"ver\\ //The space after \\ is omitted args[1]=1 //The space before and after 1 is omitted 我如何传递这个密码以便它被作为单个string接收? 我已经尝试引用密码 …bin>deployment.bat LDAPPassword=" foo\$ser"ver\\ 1 " 但它不会工作。

Windowsbatch file来更改显示器设置

我有一台桌面计算机连接到3台不同的显示器,其中只有两台显示器可以在任何时候处于活动状态。 一个是主监视器,始终处于活动状态。 我可以手动切换另外两个:一个显示器,另一个HDTV。 这个开关是一个只能处理VGA的机械开关(而且只有RGB元件是实际开关的),所以没有反馈到其他设备的计算机,因此窗户不能进行任何自动调整来改变分辨率和类似的东西那。 我想创build一个batch file,它将自动切换屏幕configuration和分辨率(硬编码正确的分辨率当然,因为我们无法检测其他设备),以便他们是正确的显示。 最好的地方在哪里开始? 我在哪里可以find命令库(或其他所谓的)来做类似的事情? 最后,在尝试这样的事情时,我有什么要注意的吗? 提前致谢, -Faken

批处理脚本vs命令行

当我在cmd提示符运行下面的命令时,它的工作原理: for /R %f in (*.shp) do ogr2ogr -nln merge -update -append merge.shp %f 但是当我从.bat文件运行它不起作用。 说 – 恩是意想不到的。 有反正我可以运行这个.bat文件。