Como faço para isolar nome de arquivo e extensão de %1
?
Use o seguinte arquivo em lote (split.bat):
@echo off
setlocal
REM usage split.bat <filename>
set _filename=%~n1
set _extension=%~x1
echo input file name is ^<%_filename%^> and extension is ^<%_extension%^>
endlocal
Notas:
-
%~n1
- Expanda%1
para um nome de arquivo sem extensão de arquivo. -
%~x1
- Expanda%1
somente para um arquivo eXtension. -
<
e>
são caracteres especiais ( redirecionamento ) e devem ser escapou usando^
.
Exemplo de uso:
> split testfile.txt
input file name is <testfile> and extension is <.txt>
Leitura Adicional
- Um índice A-Z da linha de comando do Windows CMD - Uma excelente referência para todas as coisas relacionadas à linha do Windows cmd.
- parâmetros - Um argumento de linha de comando (ou parâmetro) é qualquer valor passado para um script em lote.
- redirecionamento - Operadores de redirecionamento.
- sintaxe - Escape Characters, Delimiters e Quotes.