Execute o arquivo em lote de qualquer pasta no Windows 7

Execute o arquivo em lote de qualquer pasta no Windows 7

Eu tenho um arquivo em lote chamado CreateFolders.bat

O código é:

@echo off
md db in links output

Devo copiar o arquivo em lote para a pasta específica antes de executá-lo? De qualquer maneira, é possível ter opções para executar esse arquivo em lote específico por meio de uma tecla shotcut ou de uma opção de menu ao clicar com o botão direito do mouse?

Estou sonhando ou é possível?

Responder1

Dê uma olhada paratecla de atalho automáticoé muito flexível. Você tem que usar um pouco de script, mas não é tão difícil.

editar:Para adicionar mais detalhes à resposta:

Primeira coisa, você precisa receber o caminho usando argumentos no seu bat

@echo off
md %1/mydir

Alterei esse código que encontrei aquiCaminho de arquivo da tecla de atalho automáticopara que você possa executar um .bat no caminho exato desejado. O código a seguir usa a área de transferência para copiar o caminho em que você está atualmente.

F1::
MsgBox, % gst()  ; Path
F8::
Run C:\MyBat.bat % gst() ; Execute your bat receiving the path
return
F7::
Run C:\MyBat.bat,,Hide ; Execute your bat without seeing the black window
return

; GetSelectedText or FilePath in Windows Explorer  by Learning one 
gst()
{   
        IsClipEmpty := (Clipboard = "") ? 1 : 0
        if !IsClipEmpty 
        {
                ClipboardBackup := ClipboardAll
                While !(Clipboard = "") 
                {
                      Clipboard = 
                      Sleep, 10
                }
        }
        Send, ^c
        ClipWait, 0.1
        ToReturn := Clipboard, Clipboard := ClipboardBackup
        if !IsClipEmpty
        ClipWait, 0.5, 1
        Return ToReturn
}

onde F1, F7, F8 são as teclas que você precisa pressionar para poder executar seu programa

informação relacionada