109 votes

Comment puis-je trouver le chemin court d'un répertoire/fichier Windows ?

Je dois utiliser des noms de chemin raccourcis pour une application que j'utilise. Par exemple, j'ai besoin de C:\PROGRA~1\ au lieu de C:\Program Files. Le programme ne peut pas gérer les espaces et n'acceptera pas les chemins entre guillemets (par exemple "C:\Program Files").

Si cela peut aider, j'utilise Windows 7. Je peux accéder à n'importe quelle version depuis XP, si nécessaire.

6voto

Eino Mäkitalo Points 299

Tout comme la réponse d'Ivan Schwartz ici, vous pouvez remplacer "C:\Program Files" par %cd% pour obtenir le répertoire actuel :

cmd /c for %A in ("%cd%") do @echo %~sA

4voto

Santhosh Kumar Points 131
C:\Utilisateurs\abcd>subst z: "c:\Program Files (x86)\Microsoft Office365 Outils\Microsoft Visual Studio 14.0"

C:\Utilisateurs\abcd>subst
Z:\: => C:\Program Files (x86)\Microsoft Office365 Outils\Microsoft Visual Studio 14.0"

C'est la manière la plus facile que j'ai utilisée pour traiter les fichiers avec des espaces et elle est accessible également depuis l'explorateur de fichiers avec les mêmes privilèges d'accès.

0 votes

C'est la meilleure approche.

3voto

Asamoah Points 121

Alternativement, vous pourriez utiliser cet outil génial appelé PathCopyCopy

En quelques clics, vous pouvez obtenir le chemin long et court de littéralement n'importe quel dossier à partir du menu contextuel, par exemple :

Clic droit dans le dossier de destination => Copier le chemin => Chemin court.

Fait. Il sera copié dans votre presse-papiers.

aperçu

3voto

jerome Points 21

pour les utilisateurs de Windows 10 AUCUNE de ces solutions ne fonctionnait sur mon ordinateur portable Windows 10 car une clé dans le registre empêchait la création de noms courts.. :

  • Alt+r, tapez regedit pour ouvrir l'éditeur de registre
  • allez à HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem
  • cherchez la clé NtfsDisable8dot3NameCreation : si la valeur est 0x00000001(1), alors votre système ne crée aucun nom court pour votre dossier/fichier
  • dans ce cas, double-cliquez sur la clé NtfsDisable8dot3NameCreation,
  • tapez 0 dans le champ de données

ceci n'est pas rétroactif :) Je veux dire que vous devez recréer le dossier/fichier dont vous avez besoin d'accéder depuis votre ancienne application.. peut-être quelque chose d'astucieux est possible, bien que je ne le sache pas encore.

il semble qu'ils ont introduit cette clé pour accélérer les opérations du système de fichiers.

source microsoft : https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-2000-server/cc959352(v=technet.10)?redirectedfrom=MSDN

0 votes

Est-ce que cela ne fonctionne pas.

0 votes

Notez que la désactivation du point 8 3 n'est pas seulement une amélioration des performances, c'est également une partie de la remédiation pour une vulnérabilité IIS : serverfault.com/questions/670658/… (OK, vous ne servez probablement (espérons-le) pas un site web public à partir de votre ordinateur portable - cela s'applique davantage du côté du serveur)

1voto

NeoBlackXT Points 301
@echo off
for %%i in (%*) do echo %%~si
pause

Enregistrez-le sous le nom de shortpath.bat, puis faites glisser des fichiers dessus. Son résultat:

C:\PROGRA~1
C:\PROGRA~2
C:\PROGRA~3
C:\Python27
C:\Users
C:\Windows
Appuyez sur une touche pour continuer. . .

L'appeler avec shortpath est également OK.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X