[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

批处理如何使用相对路径执行外部程序?

本帖最后由 pcl_test 于 2016-1-19 13:15 编辑

请教:如何写批处理cmd用相对路径调用外部程序?



以下批处理能成功调用  D:\wentong\wentong.exe

@echo off
start cmd /k "cd/d d:\wentong&&wentong.exe"
exit
@echo off

我想用相对路径写批处理,无论wentong.exe置于哪个文件夹,只要把批处理置于和wentong.exe同一目录,就能启动wentong.exe,类似于apppath/wentong.exe的方式,不知道该批处理如何写?谢谢
1

评分人数

TOP

回复 1# 15972587869
  1.     rem 全盘搜索:xx软件.exe。只要找到任意1个,就goto。找不到就另goto
  2. set "FileName=xx软件.exe"
  3. echo 正在搜索,请稍候...
  4. echo 本地磁盘:
  5. for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
  6. fsutil fsinfo drivetype %%a: | find "固定">nul && (echo %%a) && (
  7. if exist %%a:\ (
  8.         for /f "delims=" %%b in ('dir /a-d /s /b "%%a:\*%FileName%" 2^>nul') do (
  9.             if /i "%%~nxb" equ "%FileName%" (
  10.                 echo,%%b
  11. goto :nexta
  12.             )
  13.         )
  14.     )
  15. )
  16. )
  17. ———————————————————————
  18. :firsta
  19. echo firstaaa
  20. exit
  21. ———————————————————————
  22. :nexta
  23. echo nextaaa
  24. exit
复制代码

TOP

全盘搜索:xx软件.exe,那会很花费时间吧

TOP

有没直接指定exe的方法

TOP

相对位置不就是
  1. ..\..\..\xxxxx
  2. .\xxxxx
复制代码
.        当前目录
..       上一级目录
人生是一部书/只有这一页最温暖/读懂它的时候/我们在远方流泪...

TOP

我的意思是用类似于VB的
apppath,如

@echo off
start cmd /k " apppath\wentong.exe"
exit
@echo off

即批处理文件和exe文件放一个目录,点击批处理就能执行exe文件,不知道怎么用批处理正确表达

TOP

回复 6# 15972587869
  1. @echo off
  2. set PWD=%~sdp0
  3. if exist %~sdp0\wentong.exe (
  4. start "" "%PWD%\wentong.exe"
  5. )
复制代码

TOP

vb的app.path就是批处理的%~dp0,那么你的要求只要start "" wentong.exe即可

TOP

谢谢楼上二位,按你们说的顺利解决

TOP

请教把批处理放在wentong\文件夹的上一级目录,调用wentong.exe又该怎么写呢?

TOP

  1. wentong.exe
复制代码
改为
  1. wentong\wentong.exe
复制代码
人生是一部书/只有这一页最温暖/读懂它的时候/我们在远方流泪...

TOP

本帖最后由 15972587869 于 2016-1-20 14:30 编辑

[请教把批处理放在wentong\文件夹的上一级目录,调用wentong.exe又该怎么写呢?

@echo off
set PWD=%~sdp0
if exist %~sdp0\wentong.exe (
start "" "%PWD%\wentong.exe"
)

像楼上这样引用,不知道如何写?
岁月静好,追梦到老

TOP

回复 12# 15972587869
  1.     @echo off
  2. set PWD=%~sdp0
  3. if exist %~sdp0\wentong\wentong.exe (
  4. start "" "%PWD%\wentong\wentong.exe"
  5. )
复制代码

TOP

本帖最后由 15972587869 于 2016-1-20 17:14 编辑

回复 13# ygqiang


用你的代码运行了下,调用不出

wentong下载:http://pan.baidu.com/s/1gek1UBT
麻烦您试试,谢谢!
岁月静好,追梦到老

TOP

回复 14# 15972587869
  1.         @echo off
  2. set PWD=%~sdp0
  3. if exist "%PWD%\wentong\wentong.exe" (
  4. start "" "%PWD%\wentong\wentong.exe"
  5. )
复制代码

TOP

返回列表