Adicione barra invertida se uma string não tiver

0

Estou desenvolvendo um arquivo em lote de linha de comando no Windows 7. Estou tentando adicionar \ a um diretório, se não tiver.

Isso é apenas um teste:

@echo off

set solutionDir=%CD%\

echo %solutionDir%

if [%solutionDir:~-1%] EQU [\] echo ends with \

Esta linha if [%solutionDir:~-1%] EQU [\] echo ends with \ funciona bem para verificar se termina com \ , mas quero verificar se não termina com \ .

Eu tentei tudo isso, mas em todos eles eu recebi um erro de sintaxe:

  1. if [%solutionDir:~-1%] NEQ [\] echo ends with \
  2. if NOT [%solutionDir:~-1%]==[\] echo ends with \
  3. if [%solutionDir:~-1%]!=[\] echo ends with \

Estou recebendo o diretório atual e quero adicioná-lo \ se não tiver.

Como posso fazer isso?

    
por VansFannel 02.05.2016 / 10:41

1 resposta

0

Dado que if [%solutionDir:~-1%] EQU [\] echo ends with \ funciona, a coisa mais lógica a fazer é adicionar uma cláusula NOT após o if para fazer o oposto.

Isso se tornaria:

if NOT [%solutionDir:~-1%] EQU [\] echo does not end with \
    
por 02.05.2016 / 10:48