Windows: Copiar e renomear um arquivo em uma única etapa? Atalho?

3

Estou cansado destas etapas ao copiar e renomear um arquivo (Windows Explorer):

  1. CTRL + C
  2. CTRL + V
  3. Teclas de navegação
  4. F2

NãohárecursoouatalhonoWindows7emqueumarquivosejacopiadoeestejanomododerenomeaçãoimediatamente?

Talvezsejaumaperguntasofisticada,masfazerisso50vezespordiaeconomizariapelomenos50*2toquesnoteclado.

PS:EuseiquevocêpodefazerissousandooCMDcopy"file1.txt" "file2.txt" , mas eu gostaria de fazer isso diretamente no Windows Explorer.

    
por Kai Noack 01.11.2014 / 08:53

3 respostas

1
 ; Press F1 in Explorer to copy and manually rename the copy of the selected file
 ; - If the size of the selected is less 50 MB, directly in the explorer
 ; - otherwise using an input box (because the copying process takes more time) 

#If WinActive("ahk_class CabinetWClass")

    $F1::
    ClipSaved := ClipboardAll 
    clipboard := "" 
    Send, ^c 
    ClipWait, 2
    if (!ErrorLevel)
    {
        SplitPath, clipboard,, dir, ext, NameNoExt
        If (ext = "")
        {
            MsgBox, No file selected
            clipboard := ClipSaved
            return
        }
        FileGetSize, size, %clipboard%, M
        If (size < 50)
        {
            Sleep, 100
            Send, ^v
            Sleep, 500
            ; Send, {F2} ; or
            SendInput, {F2}%NameNoExt% ; if you want to remove " - Copy"
        }
        else
        {
           InputBox, UserInput, Filename, Enter a name for the file,, 350, 120,,,,, %NameNoExt%
            if (!ErrorLevel)    
                FileCopy, %clipboard%, %dir%\%UserInput%.%ext%, 1  
        }
    }
    else
        MsgBox, No file selected
    Sleep, 300
    clipboard := ClipSaved
    return

#If
    
por 24.07.2018 / 19:13
1

Eu acho que o seu melhor caminho é escrever algum script que faz o que você quer, em seguida, colocá-lo no registro para que ele apareça quando você clicar com o botão direito - > abra com no arquivo. O script tomaria o seu arquivo como um parâmetro e, em seguida, copia e renomeia como você deseja (especialmente se você quiser apenas renomear como no exemplo, com o sufixo de número).

E se você estiver procurando apenas por teclado, poderá colocar um atalho no seu script na área de trabalho e, nas propriedades de atalho, atribuir um atalho de teclado.

Se você precisar fornecer um nome específico ao arquivo (ou seja, não apenas um sufixo automático), sempre poderá inserir uma caixa de entrada própria no script. É fácil na maioria dos idiomas.

Bottom line, se você pode codificá-lo, pode ser feito ... Se não, pode ser um bom contexto para dar os primeiros passos de codificação!

    
por 01.11.2014 / 10:23
1

Usando o programa de script AutoHotkey :

; Press F1 in Explorer or desktop to copy and rename the copy of the selected file:

#If WinActive("ahk_class CabinetWClass") or WinActive("ahk_class Progman")

    $F1::
    ClipSaved := ClipboardAll       ; save the entire clipboard to the variable ClipSaved
    clipboard := ""                 ; empty the clipboard (start off empty to allow ClipWait to detect when the text has arrived)
    Send, ^c                        ; copy the selected text, file or folder
    ClipWait, 2                     ; wait for the clipboard to contain data. 
    if (!ErrorLevel)                ; If NOT ErrorLevel clipwait found data on the clipboard
    {
        SplitPath, clipboard,, dir, ext, NameNoExt ; separate the file path into directory and extension
        If (ext = "")
        {
            MsgBox, No file selected
            clipboard := ClipSaved      ; restore original clipboard
            return
        }
       InputBox, UserInput, Filename, Enter a name for the file,, 350, 120,,,,, %NameNoExt%
        if (!ErrorLevel)    
            FileCopy, %clipboard%, %dir%\%UserInput%.%ext%, 1       
    }
    else
        MsgBox, No file selected
    clipboard := ClipSaved
    return

#If 
    
por 24.07.2018 / 10:47