Como remover a extensão .bat do nome do arquivo em um parâmetro?

4

Eu fiz um arquivo bat e durante a execução, ele exibe um título na janela de comando.

O título inclui o nome do arquivo bat e é exibido integralmente, incluindo a extensão .bat .

O código que estou usando para fazer isso é mostrado abaixo (veja o comando Title na quinta linha).

Os nomes que usei:

  • Nome do arquivo: Facebook.bat
  • Título (linha 5): Hacking %~nx1 Called Domain , que gera Hacking Facebook.bat Called Domain na barra de título.

Eu quero que a barra de título leia Hacking Facebook Called Domain .

Como faço isso?

Meu arquivo bat:

@echo off
color 0d
call :sub *.bat
:sub
Title Hacking %~nx1 Called Domain
echo Test 1
timeout /t 2
echo Test 2
timeout /t 2
echo Completed
timeout /t 2
exit

    
por Ferit Uzun 12.10.2014 / 21:28

1 resposta

10

A captura de tela tornou a pergunta muito mais clara.

Vejo que você está usando %~nx1 para mostrar o nome do arquivo no título do prompt de comando exibido.

Para usar o nome de arquivo sem a extensão , em vez de usar %~nx1 , use %~n0 .

ou seja:

@echo off
color 0d
call :sub *.bat
:sub
Title Hacking %~n0 Called Domain
echo Test 1
timeout /t 2
echo Test 2
timeout /t 2
echo Completed
timeout /t 2
exit

Eu tenho %~n0 de aqui .

    
por 12.10.2014 / 21:59