如何从批处理文件中实际打开程序?它所做的只是打开一个带有该文件名的命令提示符

Chr*_*ris 4 windows batch command-line batch-file

我目前正在尝试学习批处理文件脚本,所以也许我只是没有看到我做错了什么,但我只是制作了一个非常简单的批处理文件来打开一个文本文件。

这是我正在使用的代码:

@echo off
title Opening a File Lesson
START "C:\Projects\batch\hi.txt"
pause
Run Code Online (Sandbox Code Playgroud)

它没有像它应该那样打开文本文件,它所做的只是打开带有相应输出的批处理文件命令提示符:

按任意键继续 。. .

这很好,这就是我的意图,但它没有打开文本文件,而是打开另一个带有文件路径的命令提示符:C:\Projects\batch\hi.txt 作为标题,除了输出我的默认路径之外什么都不做:

Microsoft Windows [版本 6.1.7600] 版权所有 (c) 2009 Microsoft Corporation。版权所有。

C:\项目>

有人可以指导我了解我做错了什么以及为什么它没有使用默认程序打开吗?我也尝试使用绝对(目标)路径打开其他文件,如 Outlook 和 Visual Studio 2010,它做同样的事情,所以它不仅仅是文本文件。任何帮助将不胜感激,我还不习惯脚本语言。

MDM*_*313 6

为了与您当前的示例保持一致,我将添加以下内容:

START "" notepad.exe C:\Projects\batch\hi.txt
Run Code Online (Sandbox Code Playgroud)

因为你真正想做的是打开记事本并传入一个参数,在这种情况下它是文件名。Athom 的解决方案也可能有效,但我突然想到了这个。

如果您想在完成之前等待记事本关闭:

START "" /wait notepad.exe C:\Projects\batch\hi.txt
Run Code Online (Sandbox Code Playgroud)

新批处理窗口的标题在引号内,在我的示例中,我不需要标题,因此将其留空。我认为该START命令需要一个,所以它可能是强制性的。

我还建议您在完成后学习 powershell,powershell这两个词确实描述了它的用处。我不会说放弃批处理,因为现在有些事情在批处理中更容易。同样在这一点上,powershell 无法返回消极的退出代码,这很糟糕,但我离题了。


归档时间:

查看次数:

74380 次

最近记录:

11 年,3 月 前