it-swarm-pt.tech

Como copiar o caminho do arquivo para a área de transferência?

Existe uma maneira de copiar o nome do arquivo atualmente selecionado, incluindo o caminho, para a área de transferência? Idealmente, isso seria feito através do menu do botão direito.

Algum grau de flexibilidade seria útil, como a capacidade de copiar apenas o nome do arquivo, caminho + nome do arquivo, extensão do nome do arquivo menos etc. Isso não é essencial, porém, desde que seja possível copiar o caminho + nome do arquivo.

A solução deve ser compatível com o Windows XP, Windows Vista e Windows 7.

41
Charles Roper

Use CopyFilenames

ou

Copiar nomes de arquivos para o utilitário Clipboard

Windows XP não tem como copiar uma lista de nomes de arquivos para a área de transferência (isso foi alterado nas versões posteriores do Windows, começando com o Vista). Um artigo da Base de Conhecimento Microsoft sugere escrever um pequeno * .bat arquivo que executa o comando DIR, coleta sua saída em um arquivo, imprime esse arquivo e o exclui.Isso pode ser conveniente algumas vezes, mas seria mais útil poder selecionar uma lista de arquivos e ter os nomes de coloque-os na área de transferência e cole-os sempre que precisar.

Então, aqui está um utilitário para fazer isso. Você precisa trabalhar um pouco - mas não muito - para instalá-lo. Aqui estão as instruções:

  1. Faça o download do executável . É apenas 20 KB, portanto, deve levar apenas alguns segundos, mesmo se você estiver usando acesso discado. Salve-o onde quiser que ele resida no seu sistema.
  2. Crie um atalho em "Ir para"

    1. Vá para a pasta "Enviar para" com o seu nome em\Windows\Profiles no Windows Explorer (ou talvez XP Home coloque esse diretório na pasta Configurações, não me lembro).
    2. Clique com o botão direito do mouse no painel direito, onde estão os nomes dos arquivos. Selecione "Novo | Atalho".
    3. O assistente "Criar atalho" será exibido. Na primeira página, digite o caminho do executável ou use o botão "Procurar ..." para encontrá-lo. Clique em "" Avançar ".
    4. Na segunda página, digite um nome para sua nova opção de menu. Eu usei "File Names to Clipboard", mas escolha o que for significativo para você. Clique em "Finish"

É isso aí; você o instalou. Agora selecione um ou mais arquivos, clique com o botão direito do mouse e mova o ponteiro do mouse para "Enviar para". Um submenu será exibido, incluindo o seu novo comando. Escolha esse comando e uma lista dos arquivos selecionados, classificados em ordem crescente, estará na área de transferência.

Fonte: http://members.cox.net/slatteryt/FNtoClip.html

5
joe

A partir do Vista, basta clicar com o botão direito do mouse no arquivo do Explorer e selecionar "Copiar como caminho":

"Copy as path" context menu entry in Windows 7

Isso funciona mesmo para vários arquivos, que são colocados na área de transferência um por linha.

No Windows 8, isso é exposto na faixa de opções do Explorer:

"Copy path" button in the Windows 8 Explorer ribbon on the Home tab

76
Joey

Eu uso o MS 'Send to X' PowerToy disponível como parte do conjunto Windows 95 PowerToys ( link de download do MS ).
Isso adiciona 'Área de transferência como nome' (assim como 'Área de transferência como conteúdo' e algumas outras opções) ao botão direito do mouse no menu 'Enviar para'.
A maneira mais fácil de instalar é extrair o W95powertoy.exe baixado com um utilitário Zip, clique com o botão direito do mouse em 'SENDTOX.INF' e selecione 'Instalar'. Você pode remover itens indesejados do menu 'Enviar para' abrindo-o no Explorer.

Funciona bem no Windows XP - não no Windows 7, mas como observado por Johannes, você pode usar 'Shift + clique com o botão direito do mouse').

4
pelms

Eu uso o Ninotech Path Copy. Seu website está morto, mas pode ser encontrado aqui .

Existem 14 possibilidades diferentes para copiar nomes de arquivos, 5 dos quais você pode personalizar completamente.

3
jan

Aqui está a minha solução de código aberto e também gratuita, se você considerar o Windows livre :)

Crie um arquivo em lotes, digamos, listfiles.bat. Coloque um dos seguintes no arquivo:

FILENAMES

set mylist=myfilelist.txt
set tempfile=tmp.txt
set diroptions=/a /b

set fullpath=%1
for %%i in (%fullpath%) do set path=%%~dpi
cd %path%

if exist %mylist% del %mylist%
if exist %tempfile% del %tempfile%

dir %diroptions% > "%path%%mylist%"

for /f "usebackq delims=" %%a in ("%mylist%") do (
if not "%%a"=="%mylist%" (
echo %%a >> %tempfile%
)
)

del %mylist%
ren %tempfile% %mylist%

CAMINHO E ARQUIVOS

set mylist=myfileandpathlist.txt
set tempfile=tmp.txt
set diroptions=/a /b /s

set fullpath=%1
for %%i in (%fullpath%) do set path=%%~dpi
cd %path%

if exist %mylist% del %mylist%
if exist %tempfile% del %tempfile%

dir %diroptions% > "%path%%mylist%"

for /f "usebackq delims=" %%a in ("%mylist%") do (
if not "%%a"=="%path%%mylist%" (
echo %%a >> %tempfile%
)
)

del %mylist%
ren %tempfile% %mylist%

Agora crie um atalho para esse arquivo em C:\Documents and Settings\<username>\SendTo diretório. Vá para o diretório em que você deseja obter uma lista de arquivos. Clique com o botão direito do mouse em qualquer arquivo e escolha Send To -> Shortcut to listfiles.bat. A lista de arquivos será gravada em myfilelist.txt ou myfileandpathlist.txt dependendo da sua escolha. Obviamente, nada impede que você tenha atalhos para os dois arquivos em lotes no diretório SendTo.

Para a lista completa de opções dir, digite dir /? na linha de comando ou visite este site .

2
Johnny Baloney

Procurei uma solução de tecla de atalho . Para mim, estas são obras:

Windows 7 :

  1. Ctrl-C o arquivo
  2. Agora você pode colar (Ctrl-V) diretamente o conteúdo da área de transferência na caixa de diálogo Abrir do Windows no campo Caminho, se desejar abrir o arquivo pelo caminho completo OR Você pode colar (Ctrl-V) o conteúdo da área de transferência para a barra de endereço e, depois disso, Ctrl-A, depois de Ctrl-C e na área de transferência será o caminho completo

Windows 7, Windows Vista, Windows XP :

Script AutoHotkey, um pouco modificado de aqui para Ctrl + Shift + C

^+c::
Clipboard := gst()

if !IsClipEmpty

ClipWait, 0.5, 1


gst() {   ; GetSelectedText or FilePath in Windows Explorer  by Learning one 

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

}
2
Mikhail V.

O FreeCommander fornece as seguintes 3 opções após destacar os arquivos:

  1. Copiar nome completo como texto
  2. Copiar nome como texto
  3. Copiar caminho completo como texto
1
ca.webprogrammer

StExBar fornece flexibilidade e capacidade de personalização para copiar nomes de arquivos, caminhos etc., além de vários recursos adicionais.

enter image description here

1
Synetech

Alguns de nós não têm a liberdade de baixar/instalar/compilar C++ no trabalho, então aqui está uma solução sem download, sem instalação e sem código. Eu só testei isso com o Windows XP SP3:

  • Abra o prompt de comando.
  • Dirija o diretório onde estão os arquivos que você deseja listar.
  • Clique com o botão direito do mouse em qualquer lugar na janela do prompt de comando e escolha "selecionar tudo".
  • Pressione a tecla [enter] (isso efetivamente copiará a saída do comando Prompt para sua área de transferência).
  • Cole o conteúdo da sua área de transferência onde desejar (eu recomendo o Excel para que você possa "enviar texto para colunas" e torná-la uma tabela adequada).
1
Frogpower
1
innaM

Aqui está um script AutoHotkey simples, que copia todos os argumentos da linha de comando para a área de transferência (separados por novas linhas). Como em outras soluções, ele funciona via menu Enviar para , então coloque um atalho para "%USERPROFILE%\SendTo" (ou fará isso por você se for lançado sem argumentos).

Para executá-lo, cole no bloco de notas e salve em "%USERPROFILE%\SendTo\CopyToClipboard.ahk". Além disso, você precisará instalar o AutoHotkey 1.1 ( direct dl ), é FOSS.

#NoEnv
#NoTrayIcon
#SingleInstance force

If %0%
{
    Loop %0%  ; For each parameter:
        AllArguments .= ( A_Index > 0 ? "`r`n" : "") . %A_Index%
    ;MsgBox %AllArguments%
    Clipboard = %AllArguments%
    ToolTip Copied paths: %0%
} Else {
    MsgBox 68, %A_ScriptName%, This script copies command line arguments to clipboard. Intended to be used as Send To target`, so shourtcut to one should be in Send To.`n`nCreate the shourtcut?
    IfMsgBox Yes
    {
        EnvGet UserProfile, UserProfile
        FileCreateShortcut %A_AhkPath%, %UserProfile%\SendTo\Names to Clipboard.lnk,, %A_ScriptFullPath%, Copies file names (with paths) to clipboard.
    }
}

Sleep 1500
1
LogicDaemon

Funcionou corretamente no Windows 7.

Copiar lista inteira de arquivos

Etapa 1 Mantenha pressionada a tecla "Shift", clique com o botão direito do mouse na pasta que contém uma lista de arquivos e selecione "Abrir janela de comando aqui".

Etapa 2 Digite "dir/b> filenames.txt" (sem as aspas) na janela do prompt de comando. Pressione Enter."

Etapa 3 Clique duas vezes no arquivo "filenames.txt" da pasta selecionada anteriormente para ver uma lista de nomes de arquivos nessa pasta.

Passo 4 Pressione "Ctrl-A" e depois "Ctrl-C" para copiar a lista de nomes de arquivos para a área de transferência.

Dica Quando estiver pronto para colar os nomes dos arquivos, clique no local de colagem no programa apropriado e pressione "Ctrl-V".

1
user469427

Ferramentas Filemen pode fazer isso mais um monte de outras coisas úteis.

1
CGA

Para quem ainda usa o Windows XP (como eu, obrigado a trabalhar)), o procedimento a seguir funciona para copiar um único nome de arquivo sem nenhum software adicional:

  1. Clique com o botão direito do mouse no arquivo desejado na lista do Windows Explorer

  2. Clique em "Propriedades" no menu suspenso

  3. Realce o nome do arquivo na caixa na parte superior da guia "Geral"

  4. CTRL-C para copiar o nome do arquivo e feche a janela "Propriedades"

  5. CTRL-V para colar o nome do arquivo onde você desejar.

1
rrindc

Eu escrevi um pouco de aplicativo .NET gratuito/de código aberto chamado fnamecopy para fazer exatamente isso. É muito simples e não tem integração com o botão direito do mouse, basta arrastar os arquivos/pastas para os quais deseja o caminho para uma pequena janela e depois escolher para quais deseja o caminho. É muito simples, mas faz o trabalho por mim.

0
Millhouse

Eu gosto ClipboardPath por Stefan Bertels. A maioria das outras ferramentas oculta isso no submenu Enviar para, que eu raramente uso; O ClipboardPath posiciona-o próximo à parte superior do menu de contexto e, se você desejar o caminho completo da rede (muito útil), mantenha pressionada a tecla Control antes de selecionar Copiar caminho.

0
Alistair Knock