Articles of batch file

将当前目录更改为batch file目录

我有一个执行procdump操作的窗口上的bat文件。 batch file的问题是,在执行作业之前,我需要先cd到batch file目录,否则脚本将无法工作。 如何改变到当前的batch file目录? 我在我的procdump.bat尝试了下面的代码: cd "%~dp" procdump -h devenv.exe mydump.txt 但是失败了,错误信息是: 以下用于批处理参数replace的path运算符是无效的:%〜dp“ 对于有效的格式,inputCALL /? 或FOR /? 编辑: 提供的答案是工作,但只有一个catch:如果我的当前目录不同于batch file目录,那么我会得到一个“系统找不到指定的path”。 任何人有任何想法? 这是错误的截图: 替代文字http://lh4.ggpht.com/_SDci0Pf3tzU/Syx-oYLyNEI/AAAAAAAAFWo/4Naqoci2u0c/s640/system%20cannot%20find.jpg

从batch file更改允许的login计算机的列表

如何从batch file更改此设置? 对于任何给定的用户,我怎样才能使他们只能login到计算机名为abc? vbs或powershell脚本将是我的第二select。

命令行REGEDIT命令(编辑)没有popup

我试图通过一个REGEDIT命令通过一个batch file禁用UAC,一切正常 – 但是,我需要能够做到这一点,而无需点击。 当我运行: REGEDIT /S somefile.reg 它工作正常,除了要求和初始点击以允许此命令。 有没有办法解决? 我(临时)使用registry编辑禁用UAC,但在此之前启用。 谢谢。

使用netdomjoinActive Directory域

我有一个简单的脚本来joinAD域并重命名计算机。 当我直接在CLI上执行这些命令时,它工作正常。 当我通过batch file执行相同的操作时,出现错误 找不到networkingpath 我以pipe理员权限运行。 我search了微软论坛,但我的情况是独一无二的,因为它从CLI而不是从batch file netdom join %%computername%% /domain:OPSCODEDEMO.COM /userd:Administrator /passwordd:xxx netdom renamecomputer %%computername%% /NewName:%hostname% /Force 环境是在Ninefold Cloud(Xenserver)上运行的Windows 2k8 R2 SP1。

批量阅读文件夹时有奇怪的行为

我试图做一个简单的批处理(这不是整个事情,但这是使一切都失败的部分) @echo off for /f "tokens=*" %%G in ('dir /s /b /a:d "e:\tmp\*"') do ( echo %%G set fullpath=%%G set basename=%fullpath:~7% echo %fullpath% echo %basename% ) 这个剧本应该是从任何地方运行的,因此这个剧本有趣的循环。 它应该查看目录,然后做一些东西。 在这个特定的目录中,还有另外3个目录: bomslenovodb , cpat和finance 预期的产出 e:\tmp\bomslenovodb e:\tmp\bomslenovodb bomslenovodb e:\tmp\cpat e:\tmp\cpat cpat e:\tmp\finance e:\tmp\finance finance 实际输出 First run e:\tmp\bomslenovodb ECHO is off. ECHO is off. e:\tmp\bomslenovodb e:\tmp\cpat ECHO […]

如何发送当前工作目录作为参数在Windows中?

我想发送一个path作为参数到一个可执行文件。 我想要做什么这样的事情: pushd some\folder set x=cd popd MyExe.exe %x% 问题是xvariables现在等于string“cd”,但我想要的是得到cd的输出到x。 我怎么做?

为什么不是我的计划任务运行批处理脚本?

操作系统: Windows 2003 Server 安装:batch file基本上使用7zip压缩几个文件到一个位置准备通过FTP上传到异地的位置。 我已经运行了batch file,并且工作完美。 压缩文件需要大约两个小时。 我已将相关文件夹的完整权限应用于将执行计划任务的用户帐户(我为此作业创build的非​​系统用户帐户)。 我已经将batch file设置为可由非pipe理员运行。 我已经确保用户有权访问所有相关的文件夹和文件,并允许运行7Zip。 我已授予用户帐户读取和执行计划任务的权限。 症状:如果我右键单击计划任务,然后select运行三个事件出现在安全日志中,显示用户正在login,然后几乎立即注销。 没有其他例外或错误出现。 预期的DOS窗口甚至不会闪烁进我的视野。 如果我手动运行批处理,则在批处理开始运行时,7zip上访问的date将会更新。 当计划的任务被选中运行它不。 我究竟做错了什么?

从batch file调用Setup.exe崩溃错误0x0000006

我们将在几乎所有的计算机上安装一些新的软件,我正试图设置一个GPO来执行此操作。 我们运行的是Windows Server 2008 R2域控制器,我们所有的机器都是Windows 7。 GPO调用位于我们的文件服务器上的networking共享上的以下脚本。 它自己调用另一个服务器上另一个networking共享上的可执行文件的脚本。 该可执行文件将imediatelly与错误0x0000006崩溃。 事件日志只是说: Windows cannot access the file for one of the following reasons: there is a problem with the network connection, the disk that the file is stored on, or the storage drivers installed on this computer; or the disk is missing. Windows closed the program Setup.exe […]

RoboCopy从Web上的文件?

是否可以使用RoboCopy从网上下载文件? 那是什么语法? 这就是我想要的: RoboCopy "http://www.google.com/" "C:\some_folder\" "index.html" /L /V /E /LOG:"C:\some_folder\test_robocopy.log" /R:10 /W:30 错误日志给我一个错误,似乎表明该文件是一个文件夹,并且它试图击中http://www.google.com作为我的位置机器上的文件夹。 ——————————————————————————- ROBOCOPY :: Robust File Copy for Windows ——————————————————————————- Started : Tue Jan 08 10:31:04 2013 Source : C:\some_folder\http:\www.google.com\index.html\ Dest : C:\some_folder\index.html\ Files : *.* Options : *.* /V /L /S /E /COPY:DAT /R:10 /W:30 —————————————————————————— 2013/01/08 10:31:04 ERROR 123 (0x0000007B) […]

如何将parameter passing给bat脚本

请原谅我的新手问题,但自从autoexec.bat开始,我就不必碰碰到蝙蝠脚本了,而且那个人甚至直接从系统调用。 所以我想知道我可以如何传递给我的蝙蝠脚本? 例如,我想创build具有特定名称的n个目录。 我想使用这样一个构造: for %%N in (1 to $arg1$) do mkdir $arg2$-%%N 因此,我想有N个目录 名-1 名-2 名-3 … 等等。 谢谢!