使用批处理文件打开特定文件?

时间:2010-04-07 17:08:36

标签: file batch-file

我想知道如何使用批处理文件使用特定程序打开特定文件。到目前为止,我的批处理文件可以打开程序,但我不知道如何使用该程序打开文件。

@echo off
start wgnuplot.exe

9 个答案:

答案 0 :(得分:8)

start wgnplot.exe "c:\path to file to open\foo.dat"

答案 1 :(得分:2)

@echo off
start %1

或者如果需要逃避角色 -

@echo off
start %%1

答案 2 :(得分:1)

该程序需要具有可从命令行使用的特定API。

例如,以下命令使用7Zip提取zip文件。这只适用于7Zip有一个API来执行此特定任务(使用x开关)。

"C:\Program Files\7-Zip\CommandLine\7za.exe" x C:\docs\base-file-structure.zip 

答案 3 :(得分:1)

您只需致电

即可
program "file"

来自绝大多数程序的批处理文件。除非你绝对需要,否则不要混淆start;它有各种奇怪的副作用,让你的生活更加艰难。

这里的要点是,几乎所有对文件执行某些操作的程序都允许传递文件名以在命令行中执行某些操作。如果不是这种情况,那么你就不能双击图形shell中的文件来打开它们。例如。

如果您正在执行的程序是控制台应用程序,那么它将在当前控制台窗口中运行,之后批处理文件将继续。如果程序是GUI程序(即不是控制台程序;这在EXE中有区别),那么批处理文件将在启动后立即继续。

答案 4 :(得分:1)

如果要打开的文件与批处理(.bat)文件位于同一文件夹中,则只需尝试:

start filename.filetype

示例:start image.png

答案 5 :(得分:1)

您处于这样一种情况:您无法将某个程序设置为打开某种类型文件时使用的默认程序,我发现使用.bat文件很方便。在我的例子中,Textpad通过Microsoft Application Virtualization在我的机器上运行(" AppV")。 Textpad的路径位于" AppV目录"可以这么说。我的Textpad AppV快捷方式将此作为目标......

%ALLUSERSPROFILE%\Microsoft\AppV\Client\Integration\
 12345ABC-A1BC-1A23-1A23-1234567E1234\Root\TextPad.exe

将textpad.exe与' txt'相关联。文件通过' bat'文件:

1)在资源管理器中,创建一个新的(' txt')文件并将其保存为"适当的"位置

2)在opentextpad.bat文件中,输入以下行:

textpad.exe %1  

3)保存并关闭

4)在资源管理器中,通过右键单击' txt'来执行Windows文件关联。文件(例如' dummy.txt')并选择'打开>选择默认程序...'从菜单中。在'打开'窗口,单击“浏览...”,然后导航到并选择textpad.bat文件。点击“打开”#39;您将返回'打开'窗口。务必检查“始终使用所选程序打开此类型的文件”#39;复选框。点击'确定'窗口将关闭。

当你打开一个''现在,它将使用' textpad.exe'打开文件。

希望这很有用。

答案 6 :(得分:0)

@echo off
cd "folder directory to your file"
start filename.ext

例如:

cd "C:\Program Files (x86)\Winamp" 
Start winamp.exe

答案 7 :(得分:0)

如果您尝试在同一目录中打开文件,那么它将是:

../PROGRAM TRYING TO OPEN
../FILE NAME/PROGRAM TRYING TO OPEN (or this)

或者,如果尝试从同一目录回溯,那将是:

(DIRECTORY TYPE)\Users\%username%\(FILE DIRECTORY)
(ex) C:\Users\ajste\Desktop\Henlo.cmd

另外,如果你从一开始就需要一个笔直的,那就是:

mongo

答案 8 :(得分:0)

那么jar文件呢?如果我要使用批处理打开多个jar文件,该怎么办?例如。

@echo off

color 03

title My Title

echo a couple messages

echo a couple messages

echo a couple messages

start "C:/users/me/Desktop/Apps/Shimeji.jar"

start "C:/users/me/Desktop/Apps/Shimeji2.jar"

start "C:/users/me/Desktop/Apps/Shimeji3.jar"

pause

这不起作用。我在这里做错什么了吗?!我已经坚持了好几天!