Questions tagged «batch-file»

批处理文件是一个文本文件,其中包含一系列命令,这些命令由MS-DOS,IBM OS / 2或Microsoft Windows系统上的命令解释器执行。


0
Windows批处理将一个文件复制到多个目录
我有一个相当简单的复制和粘贴批处理作业。检查更新的文件并覆盖它。 我试图采取一个COPY并将其复制到第二个目录。 简单来说,这个批处理是替换系统上的文件(升级)但我还想要在一个文件夹中替换所有文件的副本。因为我的Xcopy在更换之前检查了Datestamp。然后我再也不能使用Same命令复制到其他目录 (我只希望在其他目录中替换/更新的文件) xcopy "\\DIR1\e\DIR2\DIR3" C:\ROot\System /d /y /r xcopy "\\DIR1\e\DIR6\DIR8" C:\ROot\System /d /y /r xcopy "\\DIR1\e\DIR5\DIR6" C:\ROot\System /d /y /r xcopy "\\DIR1\e\DIR4\DIR2" C:\ROot\System /d /y /r ::@pause 因此,只有文件更新,才会被替换。我如何使用它替换的文件并将它们放入Upgrade文件夹中,例如: xcopy "\\DIR1\e\DIR2\DIR3" C:\ROot\System C:\ROot\System\Upgradefile /d /y /r 即C:\ ROot \ System \ Upgradefile将是所有文件复制到C:\ ROot \ System中替换的文件的附加文件夹 只是包含:/ d =(日期)/ y …

1
批处理文件自动化问题
所以,我想为我的Minecraft服务器创建一个批处理文件来启动,然后在每天结束时重启服务器(午夜,最好是24小时也适用) 这是我的启动批处理,它调用其他批处理文件来打开并单独启动服务器: start cmd /k call BungeeStartup.bat start cmd /k call HUBStartup.bat start cmd /k call PvEStartup.bat start cmd /k call PvPStartup.bat start cmd /k call MinigamesStartup.bat start cmd /k call TownyStartup.bat start cmd /k call SecQStartup.bat 每个“Startup.bat”调用运行服务器,如下所示: D: cd Minecraft 1.12 Server Files cd BungeeCord <-- and each it's …


2
使用通配符从CMD打开文件夹
我正在使用FileMaker Pro,并希望能够在Windows资源管理器中打开一个文件夹,给定文件夹路径不是100%完成。 我们有一个合同驱动器,我们的工作得到保存= X:\在该文件夹中有100个左右的文件夹,所有文件夹都以唯一编号开头,但在编号后面还有一个职位描述。我想从FMP发送命令,打开刚给出数字的文件夹(例如X:\ 1234 *)。 从FMP我可以使用可以运行命令提示符的发送事件功能。它也可以运行BAT文件。我现在有这个: "cmd /c explorer Y:" & Jobs::JobNumber & "*" (引号中的部分是文字,外部返回存储在字段中的值) 但这只是在我的电脑上打开资源管理器。所以我需要一种方法来找到给定作业号的完整文件夹路径,然后打开该完整文件夹路径。 任何帮助都是极好的。谢谢

0
将重复的stdout输出压缩为一行
我有一个从批处理文件调用的工具,可以打印多行重复输出,比如 已创建1行。 已创建1行。 已创建1行。 1行已删除。 1行已删除。 格式未知,行将被省略。 已创建1行。 已创建1行。 已创建1个文件。 已创建1个文件。 已创建1个文件。 1个文件已删除。 1个文件已删除。 工具已成功完成。 等等,除了可以有数千条相同的线条。通过这种方式,终端窗口中的输出几乎没用。当然,我可以重定向它并将其全部写入文件然后继续执行,但我希望能够一目了然地看到发生了什么并且正在发生。有没有办法在调用此工具的批处理文件中操作流,以便输出看起来像 (3x)创建1行。 (2x)删除1行。 (1x)格式未知,行将被省略。 (2x)创建1行。 (3x)创建了1个文件。 (2x)1个文件已删除。 (1x)工具已成功完成。 优选地,当前最后一行中的计数器将在适当位置更新(替换旧值)并且每次重复输出行时增加,因此人们也会感觉到目前为止所取得的进展。 编辑:一些研究产生了一些似乎对此任务有用的部分: 这个答案显示了如何从stdin读取 这里显示了如何替换终端中的当前行,因此我们可以只增加计数器 关于在批处理中使用函数的Articel,这似乎是将流编辑部分与文件的其他部分分开的好方法。

0
如何使用批处理文件创建名称与现有文件夹中的文本名称匹配的空文本文件[关闭]
我正在尝试编写一个Windows批处理文件,用于检查文件夹A和文件夹B中存在哪些文本文件; 如果文件只出现在文件夹A中,我想在文件夹B中创建一个同名的文本文件,该文件只包含一些任意文本,但不能触及其他现有文件。 把事情说清楚 文件夹A: FILE1.TXT FILE2.TXT file3.txt 文件夹B: FILE2.TXT file3.txt 代码应检查并查看文件夹B中缺少file1.txt并创建一个包含文本“Hello World”的同名文件,但不以任何方式更改其他文件。 我知道这可能会使用if存在和功能但我无法理解它...到目前为止,这是我想出来的 for %%a in ("%~dp0\folder1\*.*") do if not exist "%~dp0\folder2\%%a" ( echo Hello World )>"%~dp0\folder2\%%a" 编辑只需将麦当劳(不是餐厅)提出的解决方案添加到我的拼图中。这只是有效的。 for %%a in ("%~dp0\folder1\*.*") do if not exist "%~dp0\folder2\%%~NXa" ( echo Hello World )>"%~dp0\folder2\%%~NXa"


1
如何使用当前日期作为参数?
我有一个批处理脚本,它将SQL数据提取到CSV文件: bcp Database.dbo.MyTable out C:\Reports\Output.csv -s ServerName -T -c 我需要输出文件的名称来包含当前日期。 例如,输出文件必须具有以下格式:Result_2012_12_31csv。 我想这里必须使用DATE函数作为参数。 我怎么能这样做?

1
批量根据卷名称重新分配驱动器号
我有一个“ WINPE”卷,并且我正在尝试获取一个批处理脚本,该脚本将为其分配驱动器号“ Z:” 有人给我下面的脚本,但是它不起作用 for /f %%D in ('wmic volume get DriveLetter^, Label ^| find "WINPE"') do set myDrive=%%D @echo off echo =============================================================================== echo. Mobile Repairs Install echo =============================================================================== echo. 1 - Install Windows 7 Home Premium echo. 2 - Install Windows 7 Prefessional echo. 3 - Install Windows 8.1 …

1
在另一个路径中使用cmd.exe的副本运行bat
我在同一文件夹中有一个test.bat和一个cmd.exe副本(重命名为cmdnew.exe)。 问题: 如何使用特定的“ cmdnew.exe”(而不是cmd.exe)运行test.bat?(如何注册外壳程序cmdnew.exe的新路径) 要考虑: 我需要将批处理(.bat)文件与新的cmdnew.exe关联 出现此问题的原因是因为cmd.exe,regedit.exe和另一个GUI Windows工具“丢失”了我的Windows操作系统(不是原因,并且与该问题无关)。但是,我必须澄清,当我使用术语“缺少”时,这意味着Windows找不到它们,但是应用程序正确地列在了它们的目录中。并且,如果我尝试手动运行cmd.exe(从Windows / system32),则得到以下消息:操作系统找不到cmd.exe 我需要以管理权限运行.bat来解决操作系统的问题 我将新的“ cmdnew.exe”控制台复制到Windows / system32路由,但是打开后被锁定了命令提示符(命令提示符已被管理员禁用。按任意键继续...)。而且我无法更改此限制,因为应用程序“ gpedit.msc”和“ regedit.exe”也处于“缺失”状态。此外,此消息不应发出,因为它是本地计算机,并且该帐户具有管理员权限 更新:七月09 它在个人计算机和管理帐户中。它没有连接到任何网络。赢得7 SP1 x64 OS。这种损害很可能是由恶意软件引起的;我不确定,也与问题无关。当前PC上没有恶意软件。 谢谢

3
批处理文件以从通配符文件夹中删除文件
如何创建从多个目录删除文件的批处理文件? D:\L1\asdasda\L3\*.txt D:\L1\dfghfghfh\L3\*.txt D:\L1\tyutyugj\L3\*.txt D:\L1\ytrtyrty\L3\*.txt 喜欢: D: del "d:\L1\*\L3\*.txt" 请注意barlop-提问者添加- 我大约有一百个目录。我不想删除文件夹,仅删除文件。它们都有一个L3文件夹,并且都包含一些具有相同扩展名的文件。这些只是临时文件,但不会自动删除。


1
Windows批处理读取TXT并将行解析为CSV
通过搜索该站点并学习Windows批处理脚本的荒谬语言,我取得了很大进展,但坦率地说,我陷入了困境。以下示例来自我们实验室的旧辐射计模块,该模块定期将其数据记录为TXT文件。我正在尝试将它们解析为适当的CSV。想法是拥有一个.bat文件,该文件可以定期运行以将特定文件夹中的所有TXT日志更改为CSV格式。 我认为可以这样做:删除空行(= header)之前的所有内容,用制表符替换空格(这是必要的,因为值之间的间距不一致),用逗号替换制表符,摆脱双逗号。 *。文本: PRODUCES MFRSR Detector Temp , degC HTR V , V MFRSR Thermopile Total , W/m^2 MFRSR 414.0nm Total , (W/m^2)/nm MFRSR 496.6nm Total , (W/m^2)/nm MFRSR 613.0nm Total , (W/m^2)/nm MFRSR 670.9nm Total , (W/m^2)/nm MFRSR 869.3nm Total , (W/m^2)/nm MFRSR 937.6nm Total , (W/m^2)/nm MFRSR …


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.