использовать `
( тяжелые акценты, также известные как backtick ) вместо одиночной кавычки ('
) или двойную кавычку ("
) и знак знака доллара / скобки ${ variable }
Например:
console.log(
`current date: ${new Date()}`
);
Подробнее о шаблонных литералах здесь .
Вы можете просто рекурсивно искать родительский каталог.
@echo off
for /R "C:\Program Files (x86)\Citrix\Remote Support Customer" %i in (g2ax_comm_customer.*) do if not exist %%i "\\location.exe" --mode unattended
@echo off
setlocal
set "supportdir=C:\Program Files (x86)\Citrix\Remote Support Customer"
REM === Agent already deployed on the computer?
for /d %%A in ("%supportdir%\*") do if exist "%%~A\g2ax_comm_customer.*" exit /b
REM === Deploying agent in silent mode
"\\location.exe" --mode unattended
Сегмент пути ????
не будет разрешен, поэтому вам может потребоваться перебрать неизвестные подкаталоги, используя цикл for /d
. Подстановочные знаки действительны для последнего сегмента.
%%~A
будет иметь абсолютные пути того, что было ????
. Теперь можно проверить, существует ли %%~A\g2ax_comm_customer.*
.
dir
может выполнять поиск в подпапках с помощью переключателя /s
. Перенаправьте его вывод в NUL и используйте условное выполнение в случае успеха / неудачи:
dir /s /b "C:\Program Files (x86)\Citrix\Remote Support Customer\g2ax_comm_customer.*" >nul 2>&1 && (
echo found the file
) || (
echo didn't find the file
)