繁体   English   中英

在当前目录中批处理引用当前目录文件

[英]batch in current dir referencing current dir files

请保持温柔。 来自极端新手的第一篇文章。 我什至不知道这里是否合适

我设法创建了一些可以工作的批处理文件,脚本和lisps,但都将它们硬编码到C:drive上的特定文件夹中。 我希望能够将.bat / .scr / .lsp复制到网络项目文件夹,并使它们在添加到该特定文件夹的任何文件上运行。 我们在共享文件之前先批处理文件。 以下是当前的.bat文件,仅当我将需要处理的文件复制到C:\\ BATCHING文件夹时,该文件才有效。 我不知道在哪里或如何添加%cd%%~dp0修饰符。

@ECHO OFF
CLS
ECHO 1. AutoCAD C3D 2015
ECHO 2. AutoCAD Map 2017
ECHO.

CHOICE /C 12 /M "Enter your Choice:"

:: Note - list ERRORLEVELS in decreasing order
IF ERRORLEVEL 2 GOTO c3d2017
IF ERRORLEVEL 1 GOTO c3d2015

:c3d2015
FOR %%V IN (C:\BATCHING\*.dwg) DO start "T" /w "C:\Program Files\Autodesk\AutoCAD 2015\acad.exe" "%%V" /b "C:\BATCHING\insert E-FILE DISCLAIMER layout.scr"
GOTO End

:c3d2017
FOR %%V IN (C:\BATCHING\*.dwg) DO start "T" /w "C:\Program Files\Autodesk\AutoCAD 2017\acad.exe" "%%V" /b "C:\BATCHING\insert E-FILE DISCLAIMER layout.scr"
GOTO End

:End

谢谢您的帮助!

我相信你想要(只显示修改):

:c3d2015
FOR %%V IN (%~dp0*.dwg) DO start "T" /w "C:\Program Files\Autodesk\AutoCAD 2015\acad.exe" "%%~fV" /b "%%~dpVinsert E-FILE DISCLAIMER layout.scr"
GOTO End

:c3d2017
FOR %%V IN (%~dp0*.dwg) DO start "T" /w "C:\Program Files\Autodesk\AutoCAD 2017\acad.exe" "%%~fV" /b "%%~dpVinsert E-FILE DISCLAIMER layout.scr"
GOTO End

谢谢@paul。 那使我指出了正确的方向。 我能够对其稍加修改以使其正常工作。 这是最终的格式:

:c3d2017
FOR %%V IN (*.dwg) DO start "T" /w "C:\Program Files\Autodesk\AutoCAD 2017\acad.exe" "%%~fV" /b "%%~dpVinsert E-FILE DISCLAIMER layout.scr"
GOTO End

您可以减少代码量,但仍使用报告的工作执行字符串。

@ECHO OFF
SET "VAR=5"
CLS
ECHO 1. AutoCAD C3D 2015
ECHO 2. AutoCAD Map 2017
ECHO.

CHOICE /C 12 /M "Enter your Choice:"
IF ERRORLEVEL 2 SET "VAR=7"

FOR %%A IN (*.dwg) DO START "" /W "%ProgramFiles%\Autodesk\AutoCAD 201%VAR%\acad.exe" "%%~fA" /b "%%~dpAinsert E-FILE DISCLAIMER layout.scr"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM