0

我有以下批处理文件:(名称:u.bat)

@echo off
start "" "C:\Program Files (x86)\IDM Computer Solutions\UltraEdit\Uedit32.exe"  %1
rem exit

我在临时文件夹中运行批处理文件以打开现有的“readme.txt”

c:\temp> u readme.txt

发生的事情是应用程序试图打开C:\Program Files ....\UltraEdit目录中的readme.txt,而不是C:\temp目录。

如何判断批处理文件 %1 在当前目录中?

4

3 回答 3

1

你需要指定路径,

句法

启动一个单独的窗口以运行指定的程序或命令。

开始 ["title"] [/Dpath] [/I] [/MIN] [/MAX] [/SEPARATE | /共享] [/低 | /正常 | /高 | /实时 | /高于正常 | /BELOWNORMAL] [/WAIT] [/B​​] [命令/程序] [参数]

路径 起始目录

于 2013-09-29T15:37:09.117 回答
0

这也应该有效,并允许您打开多个文件:

@echo off
start "" "C:\Program Files (x86)\IDM Computer Solutions\UltraEdit\Uedit32.exe"  "%~f1" "%~f2" "%~f3" "%~f4" "%~f5"

但是您可能会发现这也有效,并且 cmd 窗口将关闭:

@echo off
"C:\Program Files (x86)\IDM Computer Solutions\UltraEdit\Uedit32.exe"  %*
于 2013-09-30T03:54:19.250 回答
0

可能与 UltraEdit 有关,但您可以做的是包括%~dp0获取当前驱动器和路径,如下所示

@echo off
start "" "C:\Program Files (x86)\IDM Computer Solutions\UltraEdit\Uedit32.exe" .\%1
rem exit

或者

@echo off
start "" /D . "C:\Program Files (x86)\IDM Computer Solutions\UltraEdit\Uedit32.exe" %1
rem exit
于 2013-09-29T15:42:57.353 回答