标签: batch-file

从 CMD.EXE 在 32 位和 64 位版本的 Vista/Windows 7 中查找应用程序的正确技术

背景

我有一个可以正常工作的现有 CMD 脚本。它从程序文件中启动一个应用程序,就像这样

"%PROGRAMFILES%\MyApp\app.exe" 
Run Code Online (Sandbox Code Playgroud)

问题

  • 它在 32 位版本的 Windows(Vista、Windows 7)上运行良好
  • 但在 64 位版本的 Windows 上,该应用程序将安装到“Program Files (x86)”而不是“Program Files”(这是在 32 位操作系统上发生的情况)

我在寻找什么

  • 一个可以稳健地处理这两种情况的脚本(即它“做正确的事情”取决于它所在的操作系统)
  • 一种仅使用 CMD.EXE 中的那些功能的方法。我对使用 Powershell 等的解决方案好奇,但那些对我没有帮助 - Powershell 不会在这个脚本将运行的机器上。

windows 64-bit batch-file windows-command-prompt

6
推荐指数
2
解决办法
1万
查看次数

如何使批处理文件在出错时自动停止

有谁知道是否有一个 Windows 批处理文件相当于 Unix Stop on Error "#!/bin/sh -e"?

( http://www.turnkeylinux.org/blog/shell-error-handling )

windows unix batch-file error-handling

6
推荐指数
1
解决办法
1万
查看次数

如何从命令行获取目录的最后一部分

如何将目录的最后一部分存储在变量中?

例如,我有以下路径:A\B\C\D,我想存储D在像file_name=D.

windows files directory batch-file strings

6
推荐指数
1
解决办法
2万
查看次数

批量删除映射和本地打印机

有没有办法通过组策略或批处理文件从域上的所有工作站批量删除所有本地和网络映射打印机?

我需要删除本地 Windows 7 打印机,例如 Fax、Microsoft XPS Document Writer、Send To OneNote 2010。

windows-7 group-policy batch-file windows-server-2008-r2

6
推荐指数
1
解决办法
1万
查看次数

使用 Mercurial 和 Robocopy 备份?

问题

我们想将多个网络共享中的关键文件备份到可移动硬盘驱动器。我们希望自动备份,因此我们不必记住运行它。它需要在一夜之间完成。此外,我们希望能够保留每个文件的多个版本,以便我们可以更轻松地解决用户的错误。

背景资料

我在一家基于 Windows 的大型企业工作,有一个集中的 IT 部门负责所有备份。他们的备份面向灾难恢复而不是用户错误,并且需要上级管理人员批准任何非灾难恢复。有几次我们注意到我们的备份失败了,我们没有收到通知。我没有服务器或桌面的管理权限。我们正在尝试备份大约 240 GB 的大约 198,000 个文件。这些文件很少更改。我们的备份驱动器是 1 TB。

我建议的解决方案

我想要做的是使用带有 /mir 选项的RobocopyMercurial SCM编写一个批处理文件来存储文件的所有版本。我会在每次执行 Robocopy 之前先执行 hg add 和 hg commit,以保存当前状态,然后制作文件结构的镜像副本。问题是 /mir 将删除源中不存在的每个文件夹,而 Mercurial 将存储库存储在目标文件夹中的 .hg 文件夹中。

有谁知道我如何说服 Mercurial 将 .hg 文件夹存储在其他地方,或者说服 Robocopy 不要从目的地删除它?

我试图避免编写自定义程序来进行复制。

windows backup robocopy batch-file mercurial

6
推荐指数
1
解决办法
1083
查看次数

如何编写对 Windows 2008 R2 服务器上的 msmq 存储位置的更改的脚本

有没有办法通过批处理或powershell脚本来做到这一点?我正在寻找一种方法来设置几个新服务器。

我在这个主题上发现的唯一一件事让我相信你不能:来自:http : //technet.microsoft.com/en-us/library/cc785060.aspx

只能使用计算机管理、服务和应用程序、消息队列属性中的存储选项卡修改消息存储位置。

编辑 - 我也找到了这篇文章。它列出了一些注册表值,但再次建议不要使用它 http://blogs.msdn.com/b/johnbreakwell/archive/2009/02/09/changed-the-msmq-storage-location.aspx

powershell batch-file msmq

6
推荐指数
1
解决办法
1254
查看次数

Windows:“查询用户”命令报告的空闲时间不准确(误报)

我正在与其他十个系统管理员一起工作,他们有时会忘记注销服务器(甚至锁定它们)。两天或更长时间以来,我一直试图想出一个“脚本”来检查我们管理的每台服务器是否有空闲的管理员帐户。如果它们闲置超过两天,我打算将它们注销(而不是锁定它们)。

如果我可以依靠命令“查询用户”,这将是一个完成的项目。但不幸的是,我似乎不能依赖该命令。以下是随机服务器的一些示例输出:

 USERNAME              SESSIONNAME        ID  STATE   IDLE TIME  LOGON TIME
 techyellow            console             4  Active      none   1/18/2017 10:35 AM
Run Code Online (Sandbox Code Playgroud)

TechYellow 从 2017 年 1月 19 日开始休假 - 现在已经闲置了近四天。如果我启动 VNC 会话,我可以看到 - 就像白天一样 - Windows 已登录,我可以使用 TechYellow 的帐户做任何我想做的事情;它甚至没有被锁定。然而,我的查询认为 TechYellow 是Active。我已经确认即使帐户被锁定也是如此 - 它仍然经常报告活动。这只是一个示例 - 我一直在多台服务器上测试此命令,我发现对于各种不同的管理员帐户,它提供错误结果的频率高于正确结果。

有更好的替代Query User吗?我看了高低,但我发现的一切都回到了类似的命令,这些命令都报告错误。

我只是想看看管理员是否已登录并且闲置了两天或更长时间。就是这样!过去有人征服过这个吗?

batch-file windows-command-prompt

6
推荐指数
0
解决办法
2317
查看次数

您在 Windows 环境中为登录脚本使用什么脚本语言?

我想知道现在最常使用哪种脚本语言作为登录脚本。人们是否仍在使用批处理文件或 vbscripts 进行黑客攻击,或者您是否使用 PowerShell 或完全不同的东西?

就我个人而言,我对vbscript很好的经验,它几乎适用于所有 Windows 版本,但 PowerShell 看起来不错,可能是未来的一个选择。

那么,您首选的登录脚本脚本语言是什么,为什么?如果可以,请分享您在登录脚本中所做的一些出色的事情。

问候,埃吉尔。

windows powershell logon-scripts batch-file vbscript

5
推荐指数
1
解决办法
3682
查看次数

如何在 Windows 中以批处理文件的形式压缩文件?

我可以通过右键单击并选择“发送到..压缩(zip)文件..”来从GUI压缩Windows中的文件或文件夹。

是否可以在批处理文件中做同样的事情?

windows compression batch-file

5
推荐指数
1
解决办法
1万
查看次数

如何为整个驱动器恢复 Windows 中文件的压缩属性

我工作中的某个人(系统管理员)实际上在 WinXP 上执行了“清理”任务,同时使用 Windows 压缩文件属性压缩了我硬盘上的所有文件(文件名在 Windows 资源管理器中变蓝)

我实际上并不需要压缩我的文件,而且我认为这也会影响我 PC 的性能。

我尝试搜索文件,使用 Windows 资源管理器选择它们并取消选中复选框以解压缩它们,但是仅仅获得 160,000 个文件的“属性”窗口是不可能的。

有人对此有想法吗?一个 .bat 文件来完成这项工作?

files compression windows-xp cleanup batch-file

5
推荐指数
1
解决办法
4297
查看次数