Получить абсолютный путь к файлу, используя пакетный скрипт - PullRequest
1 голос
/ 17 июня 2019

У меня есть приложение Java, которое производит вывод, который сохраняется в файле myfile.txt с использованием пакетного сценария. Теперь я хотел бы передать абсолютный путь этого myfile.txt файла другому Java-приложению в качестве аргумента командной строки.

Так что-то вроде:

java -jar "path/to/jar/MyJar.jar" > myfile.txt

<Something to get and store absolute path of myfile.txt>

java -jar "path/to/jar/MyOtherJar.jar" <absolute path of myfile.txt>

Теперь я нашел этот ответ , в котором говорится об использовании %~dpnx1, но я не могу понять, как это применить. Есть предложения?

1 Ответ

1 голос
/ 17 июня 2019

Использование синтаксиса %~dpnx1 или просто %~f1 требует, чтобы имя файла содержалось в аргументах.
dpnx = (D) рив (P) ат (N) ame e (X) напряжение = полное (F) имя

Это можно сделать с помощью CALL :func <argument> или FOR.

call :getAbsolutePath resultVar "myFile.txt"
echo %resultVar%
exit /b


:getAbsolutePath <returnVar> <filename>
set "%1=%~f2"
exit /b

Или через FOR

FOR /F "delims=" %%X in ("myFile.txt") DO set "absPath=%%~fX"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...