Comment copier le chemin du fichier dans le presse papier?


40

Est-il possible de copier le nom de fichier actuellement sélectionné, y compris le chemin, dans le presse-papier? Idéalement, cela se ferait par le biais du menu contextuel.

Un certain degré de flexibilité serait utile, comme la possibilité de copier uniquement le nom de fichier, le chemin d'accès + le nom de fichier, l'extension moins le nom de fichier, etc. Ceci n'est toutefois pas essentiel tant qu'il peut copier le chemin d'accès + nom de fichier.

La solution doit être compatible avec Windows XP, Windows Vista et Windows 7.


6
Vista et les versions ultérieures ont intégré cette méthode: maintenir la touche Maj enfoncée, ouvrir le menu contextuel sur les fichiers sélectionnés. Il y aura un élément appelé " Copier en tant que chemin "
LogicDaemon

Charles envisageriez-vous de changer la réponse acceptée maintenant que cela est intégré à Windows? Cela aidera les autres à trouver plus facilement la meilleure réponse.
Simon East

Je n'ai pas voté pour ouvrir à nouveau cette question car la réponse acceptée ne sera pas modifiée, car elle est uniquement intégrée à Windows Vista et versions ultérieures. Je vois beaucoup trop d’opportunités pour que cette question soit abusée. À tout le moins, s'il devait être rouvert, il devrait être protégé pour éviter les réponses "moi aussi".
Ramhound

1
@SimonEast La question dit qu'elle doit être compatible avec XP, donc la réponse acceptée reste la plus appropriée. La deuxième réponse a plus de votes et se situe directement sous la réponse acceptée, ce qui semble un compromis raisonnable. Voici comment le système StackExchange Q / A est conçu pour fonctionner.
Charles Roper

Réponses:


5

Utiliser des noms de fichiers

ou

Copier les noms de fichiers dans l'utilitaire du presse-papiers

Windows XP n'a aucun moyen de copier une liste de noms de fichiers dans le Presse-papiers (cela a changé dans les versions ultérieures de Windows, à commencer par Vista). Un article de la Base de connaissances Microsoft suggère d’écrire un petit fichier * .bat qui exécute la commande DIR, collecte sa sortie dans un fichier, l’imprime, puis le supprime. Cela peut être pratique à certains moments, mais il serait plus utile de pouvoir sélectionner une liste de fichiers et d’en afficher le nom dans le presse-papiers. Ensuite, vous pouvez les coller où vous en avez besoin.

Alors, voici un utilitaire pour le faire. Vous devez faire un peu de travail vous-même - mais pas beaucoup - pour l'installer. Voici les instructions:

  1. Téléchargez l' exécutable . Il ne s'agit que de 20 Ko. Cela ne devrait donc prendre que quelques secondes, même si vous utilisez un accès à distance. Enregistrez-le où vous voulez qu'il réside sur votre système.
  2. Créer un raccourci dans "Aller à"

    1. Allez dans le dossier "Envoyer vers" sous votre nom dans \ Windows \ Profiles dans l'Explorateur Windows (ou peut-être XP Home place ce répertoire dans le dossier Paramètres, je ne me souviens plus).
    2. Cliquez avec le bouton droit dans le volet de droite, où se trouvent les noms de fichiers. Sélectionnez "Nouveau | Raccourci".
    3. L'assistant "Créer un raccourci" apparaîtra. Sur la première page, tapez le chemin d'accès à l'exécutable ou utilisez le bouton "Parcourir ..." pour le trouver. Cliquez sur Suivant".
    4. Sur la deuxième page, tapez un nom pour votre nouvelle option de menu. J'ai utilisé "Noms de fichier dans le presse-papiers", mais choisissez ce qui vous intéressera. Cliquez sur "Terminer"

C'est ça; vous l'avez installé. Sélectionnez maintenant un ou plusieurs fichiers, cliquez avec le bouton droit de la souris et déplacez le pointeur de la souris sur "Envoyer vers". Un sous-menu apparaîtra qui inclura votre nouvelle commande. Choisissez cette commande et une liste des fichiers que vous avez sélectionnés, triés par ordre croissant, sera dans le presse-papiers.

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


2
Inconvénient grave de ce programme: il ne peut pas gérer les noms de fichiers Unicode. L'utilisation d'un petit fichier batch qui ne fait que diriger les arguments de ligne de commande clip.exe(inclus dans les versions récentes de Windows, précédemment disponibles dans le kit de ressources) devrait probablement fonctionner mieux ici (à condition que vous utilisiez des polices TrueType pour la console).
Joey

75

À partir de Vista, vous pouvez simplement appuyer sur la touche Maj + clic droit de la souris sur le fichier dans l’explorateur et sélectionner "Copier comme chemin":

        Entrée de menu contextuel "Copier en tant que chemin" dans Windows 7

Cela fonctionne même pour plusieurs fichiers, qui sont placés dans le presse-papiers un par ligne.

Dans Windows 8, cela est exposé dans le ruban de l'Explorateur:

        Bouton "Copier le chemin" dans le ruban de Windows 8 Explorer sous l'onglet Accueil


6
Génial, cela devrait tout à fait être la réponse acceptée. Aucun logiciel requis!
HaggleLad

5
Excellent, je me demande comment je pourrais utiliser Windows si longtemps sans connaître celui-ci. Bonus pour travailler sur plusieurs fichiers.
Bratch

2
@HaggleLad la raison pour laquelle ce n'est pas la réponse acceptée est due à cette ligne de la question initiale: "Doit être compatible avec XP, Vista et Win7".
Charles Roper

4

J'utilise le PowerToy MS 'Send to X' disponible dans le set Windows 95 PowerToys ( lien de téléchargement MS ).
Ceci ajoute "Presse-papiers comme nom" (ainsi que "Presse-papiers comme contenu" et quelques autres options) au menu contextuel "Envoyer à".
Le moyen le plus simple à installer consiste à extraire le fichier W95powertoy.exe téléchargé à l'aide d'un utilitaire Zip, cliquez avec le bouton droit sur 'SENDTOX.INF' et sélectionnez 'Installer'. Vous pouvez supprimer tous les éléments indésirables du menu "Envoyer vers" en les ouvrant dans l'explorateur.

Fonctionne bien sous Windows XP - pas sous Windows 7, mais comme l'a noté Johannes, vous pouvez utiliser «Maj + clic droit» à la place.


3

J'utilise Ninotech Path Copy. Leur site Web est mort, mais vous pouvez le trouver ici .

Il existe 14 possibilités différentes pour copier des noms de fichiers, dont 5 peuvent être entièrement personnalisées.


+1 pour PathCopy; Cet outil est particulièrement utile si, par exemple, vous devez convertir le chemin en barres obliques ou si vous avez simplement besoin du chemin sans le nom de fichier.
yalestar

Excellent, exactement ce que je cherchais, ils fournissent une DLL 64 bits donc je suppose que cela fonctionne sur Win7 (essayera à la maison ...). Les capacités de personnalisation semblent puissantes (y compris une fonction de recherche / remplacement!).
PhiLho

2

J'ai cherché une solution de raccourci clavier . Pour moi ce sont des œuvres:

Windows 7 :

  1. Ctrl-C le fichier
  2. Maintenant, vous pouvez coller (Ctrl-V) directement le contenu du presse-papier dans la boîte de dialogue Ouvrir de Windows dans le champ Chemin, si vous souhaitez simplement ouvrir le fichier par le chemin complet OU Vous pouvez coller (Ctrl-V) le contenu du presse-papier dans la barre d'adresse et après cela Ctrl-A, après Ctrl-C, et dans le presse-papier sera le chemin complet

Windows 7, Windows Vista, Windows XP :

Script AutoHotkey, un peu modifié à partir d' ici pour Ctrl + Maj + 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

}

1

C'est l'un des utilitaires de victoire les plus épiques.
Chris Marisic

1
Un éditeur anonyme indique que: > lors du téléchargement de la version 2.6, Antivirus déclare que ce fichier contient un Trojan / virus , la version 2.5 semble être correcte.
slhck


1

Certains d'entre nous n'ont pas la liberté de télécharger / installer / compiler C ++ au travail. Voici donc une solution sans téléchargement, sans installation, sans code. Je n'ai testé cela qu'avec Windows XP SP3:

  • Ouvrez l'invite de commande.
  • Dir le répertoire où se trouvent les fichiers que vous voulez lister.
  • Cliquez avec le bouton droit n'importe où sur la fenêtre de l'invite de commande et choisissez "Tout sélectionner".
  • Appuyez sur la touche [Entrée] (cela copiera efficacement le résultat de l'invite de commande dans votre presse-papiers).
  • Collez le contenu de votre presse-papiers à l'endroit souhaité (je vous recommande Excel pour que vous puissiez "transformer des colonnes en texte" et en faire un tableau approprié).

1

StExBar vous offre une certaine flexibilité et possibilité de personnalisation pour la copie de noms de fichiers, de chemins, etc., ainsi que de diverses fonctionnalités supplémentaires.

entrez la description de l'image ici


1

Pour ceux qui utilisent encore Windows XP (comme moi, au travail), la procédure suivante permet de copier un seul nom de fichier sans logiciel supplémentaire:

  1. Faites un clic droit sur le fichier souhaité dans la liste de l'explorateur Windows

  2. Cliquez sur "Propriétés" dans le menu déroulant

  3. Mettez en surbrillance le nom du fichier dans la case en haut de l'onglet "Général"

  4. CTRL-C pour copier le nom du fichier puis fermer la fenêtre "Propriétés"

  5. CTRL-V pour coller le nom du fichier où vous le souhaitez.


1

FreeCommander fournit les 3 options suivantes après la mise en évidence des fichiers:

  1. Copier le nom complet en tant que texte
  2. Copier le nom en tant que texte
  3. Copier le chemin complet en tant que texte

1

Voici ma solution open source et également gratuite, si vous considérez que Windows est gratuit :)

Créez un fichier de commandes, par exemple listfiles.bat. Mettez l’un des éléments suivants dans le fichier:

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%

CHEMIN ET NOMS DE FILS

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%

Créez maintenant un raccourci vers ce fichier dans le C:\Documents and Settings\<username>\SendTorépertoire. Accédez au répertoire dans lequel vous souhaitez obtenir une liste de fichiers. Faites un clic droit sur n'importe quel fichier et choisissez Send To -> Shortcut to listfiles.bat. La liste des fichiers sera écrite dans myfilelist.txtou myfileandpathlist.txtselon votre choix. Évidemment, rien ne vous empêche d'avoir des raccourcis vers les deux fichiers de commandes du SendTorépertoire.

Pour obtenir la liste complète des dircommutateurs, tapez dir /?sur la ligne de commande ou visitez ce site Web .


1

Voici un simple script AutoHotkey, qui copie tous les arguments de ligne de commande dans le presse-papiers (séparés par des nouvelles lignes). Comme avec d'autres solutions, cela fonctionne via le menu Envoyer vers , alors mettez un raccourci pour le faire "%USERPROFILE%\SendTo"(ou le fera pour vous si vous n'avez pas d'arguments).

Pour l'exécuter, collez-le dans le bloc-notes et enregistrez-le dans "%USERPROFILE%\SendTo\CopyToClipboard.ahk". Aussi, vous aurez besoin d' AutoHotkey 1.1 ( dl direct ) installé, c'est 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

A fonctionné correctement dans Windows 7.

Copier la liste complète des fichiers

Étape 1 Maintenez la touche "Shift" enfoncée, cliquez avec le bouton droit de la souris sur le dossier contenant une liste de fichiers et sélectionnez "Ouvrir la fenêtre de commande ici".

Étape 2 Tapez "dir / b> nomfichiers.txt" (sans les guillemets) dans la fenêtre d'invite de commande. Appuyez sur Entrée."

Étape 3 Double-cliquez sur le fichier "noms de fichiers.txt" du dossier précédemment sélectionné pour afficher la liste des noms de fichiers qu'il contient.

Étape 4 Appuyez sur "Ctrl-A" puis sur "Ctrl-C" pour copier la liste des noms de fichiers dans votre presse-papiers.

Conseil Lorsque vous êtes prêt à coller les noms de fichier, cliquez sur votre emplacement de collage dans le programme approprié, puis appuyez sur "Ctrl-V".


0

J'aime ClipboardPath de Stefan Bertels. La plupart des autres outils cachent cela dans le sous-menu Envoyer vers, que j'utilise rarement; ClipboardPath le positionne près du haut du menu contextuel et si vous voulez le chemin d'accès complet au réseau (très utile), maintenez simplement la touche Ctrl enfoncée avant de sélectionner Copier le chemin.


0

J'ai écrit un petit .NET App gratuit / opensource appelé fnamecopy pour faire cela. C’est très simple et il n’ya pas d’intégration par clic droit, il vous suffit de faire glisser le (s) fichier (s) / dossier (s) dont vous voulez le chemin vers une petite fenêtre, puis de choisir ceux pour lesquels vous voulez avoir le chemin. C'est très simple, mais le travail est fait pour moi.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.