如何在Windows命令行中使用空格?
cmd /C C:\Program Files (x86)\WinRar\Rar.exe a D:\Hello 2\File.rar D:\Hello 2\*.*
Run Code Online (Sandbox Code Playgroud) 在Windows XP之后,我总是使用下面的技巧来启动使用Windows任务管理器最小化的批处理文件.
来自http://www.pcreview.co.uk/forums/running-bat-files-minimized-scheduler-t2125918.html:
"prequisite:所有批处理文件都有一个exit-command来完成关闭操作.如果你不退出,你将以命令提示符闪烁结束.
这是我一直在使用的:
%comspec% /c start /min "C:\Scripts\Destination_inbound_ftp5.bat"
Run Code Online (Sandbox Code Playgroud)
当您将其保存在属性中时,您将收到一个后续对话框,询问您是否将所有这些都指定为参数.回答否,任务将按照您的预期保存.
我还阅读了Stack Overflow问题"start%comspec%/ c script.cmd"vs"start cmd/C second.cmd script.cmd",这使得我用"C:\ Windows \"替换了"%comspec%"语句system32\cmd.exe",但这也没有改变任何东西.
问题是,现在,我最终只使用命令提示符,而不是最小化的运行bat文件,最小化但没有执行任何批处理命令.任务调度程序状态仍为"正在运行":(
如何在Windows 8(64位)上完成此操作?可以使用旧式批处理命令而不是PowerShell(或者更糟; p)
我有一个bat文件将文件从当前机器复制到映射网络驱动器(一行,xcopy命令).
当我RDP到服务器时,它工作.但是,当我作为计划任务运行,并将其配置为在我登录的同一用户下运行时,它不起作用并给出错误0x4.
有没有办法实现这个目标?
我也尝试dsynchronize,当我点击同步时它就可以工作了.当我把它作为服务运行同样的问题.
我正在运行C#Windows控制台应用程序,并通过Task Scheduler传递了几个参数。它全天运行,将其他应用程序创建的平面文件数据加载到SQL Server中。该程序间歇性地失败,并且我具有Try / Catch逻辑,该逻辑使用Console.WriteLine()写入有关异常的信息。
因此,基本上我需要跟踪控制台输出的位置,以便可以采取措施消除间歇性故障。我在网上浏览了很多,认为这是诊断Task Scheduler计划的应用程序中的错误的相当普遍的要求。我的在线搜索显示了一些解决方案,但是当直接通过Task Scheduler运行ac#控制台应用程序时,关于控制台输出的位置没有直接答案。
我看到的两个解决方法是:
(1)获取任务计划程序以运行Windows批处理脚本(.bat文件),而不是直接运行控制台应用程序(.exe文件)。在批处理脚本中,使用“>”或“ >>”将控制台输出重定向到平面文件(例如C:\ app \ myapp.exe arg1 arg2>“ C:\ log \ myapp_console_output.txt”)
(2)一个非常相似的解决方案是让Task Scheduler使用/ C选项运行Windows命令行cmd.exe,并将参数传递到cmd.exe中以运行我的控制台应用程序,并重定向控制台输出。例如:cmd.exe / C“ C:\ app \ myapp.exe” arg1 arg2>“ C:\ log \ myapp_console_output.txt”
尽管我承认上述变通办法很可能会帮助我捕获将来的故障,但并不能真正帮助我跟踪已发生的间歇性故障的输出。它们似乎也很杂乱,无法实现我认为是非常常见的标准要求。
任何人都可以确认直接通过Task Scheduler运行ac#控制台应用程序时,控制台输出肯定不会保留在某处吗?