Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Добавление кавычек в переменную, если их нет. (http://forum.oszone.net/showthread.php?t=354308)

brimama 01-10-2023 19:55 3017343

Добавление кавычек в переменную, если их нет.
 
Как сделать так, если вводится путь без кавычек, то они добавляются в переменную. Если вводится путь уже с кавычками, то так и заносится и ничего не добавляется.

Если вводится "С:\123.txt" то так и остается.
Если вводится C:\123.txt то добавляются кавычки как сверху.

Я не знаю, или проверка если кавычки есть, то переход goto test1, если нету, то переход goto test2 и там уже добавлю их.


SET /P example=Введите путь:

brimama 01-10-2023 20:36 3017346

Разобрался
Код:

echo %example%|>nul find """"&&goto test1||set example="%example%"

megaloman 02-10-2023 08:51 3017355

brimama,
Код:

@echo off
cls
        Set example="A:\fg hjk h\ghj.hjgf"
        (Set example="%example:"=%")
        Echo %example%

        Set example=A:\fg hjk h\ghj.hjgf
        (Set example="%example:"=%")
        Echo %example%
pause


brimama 02-10-2023 19:26 3017380

megaloman, Спасибо большое, ваш пример проще. Взял его

Serguei Kouzmine 05-10-2023 15:30 3017541

короче

Код:

@echo OFF

call :STRIP %1
goto :EOF

:STRIP
set A=%~1
echo "%A%"
goto :EOF

Код:

ac.cmd xyz
"xyz"

ac.cmd "x y z"
"x y z"


NickM 05-10-2023 15:47 3017542

Цитата:

Цитата Serguei Kouzmine
короче »

А если так?
Код:

ac.cmd x y z

Foreigner 05-10-2023 18:38 3017557

Код:

@echo off
setlocal

set /p "example=Введите путь: "

echo %example%

C:\123 возвращает С:\123
"C:\123" возвращает "C:\123"

Serguei Kouzmine 05-10-2023 21:44 3017566

Цитата:

Цитата NickM
А если так? »

так в примере только один аргумент заключается в кавычки

если хочется все арумгетын зачсяаеклют в кавычки то это так

Код:

@echo off

echo "%*"

как собрать эти скрптыи вместе вы уж сами

NickM 06-10-2023 06:06 3017575

Цитата:

Цитата Serguei Kouzmine
так в примере только один аргумент заключается в кавычки »

Имеется ввиду, что если ввели путь с пробелами и без кавычек?

Serguei Kouzmine 06-10-2023 07:33 3017578

Код:

%1 первый
%* все



Время: 23:57.

Время: 23:57.
© OSzone.net 2001-