Extrai a substring depois de um caractere, se existir, caso contrário, retorna toda a string, no CMD

0

Estou tentando encontrar a maneira mais simples de, no CMD, extrair depois / ou \ , o que vier por último, se for encontrado, em uma string.

Por exemplo:

Entrada

apiserver_sdk

Esperado

apiserver_sdk

ou

Entrada

D:/dev/some/folder/GO/projectName

Esperado

projectName

Estou bastante familiarizado com substr, substring de linguagens de programação reais, mas não tenho certeza sobre isso em idiomas shell como o CMD.

    
por Mike Warren 25.09.2018 / 18:00

1 resposta

0

Aqui está um método que deve funcionar:

  echo %string% | findstr " / \ " >nul && for %%A in (%string%) do set string=%%~nA

before: apiserver_sdk  
after:  apiserver_sdk  

before: D:/dev/some/folder/GO/projectName
after:  projectName

before: c:\one\two three\four five
after:  five

before: "c:\one\two three\four five"
after:  four five
    
por 25.09.2018 / 19:06