Comment utiliser les espaces dans L'invite de commande?
Comment puis-je utiliser des espaces dans la ligne de commande Windows?
cmd /C C:Program Files (x86)WinRarRar.exe a D:Hello 2File.rar D:Hello 2*.*
9 réponses
Les guillemets simples ne feront pas l'affaire dans ce cas. Vous devez ajouter des guillemets autour de chaque chemin et entourer la commande entière de guillemets:
cmd /C ""C:\Program Files (x86)\WinRar\Rar.exe" a "D:\Hello 2\File.rar" "D:\Hello 2\*.*""
Je viens de comprendre que pour un cas où le chemin implique l'utilisation de caractères d'espace blanc, par exemple, quand j'ai besoin d'accéder à l'application xyz
quel emplacement est:
C:\Program Files\ab cd\xyz.exe
Pour l'exécuter à partir de l'invite Windows cmd, vous devez utiliser
C:\"Program Files"\"ab cd"\xyz.exe
Ou
"C:\Program Files\ab cd\xyz.exe"
Si les guillemets doubles ne résolvent pas le problème, essayez par exemple
dir /X ~1 c:\
Pour obtenir une liste de noms de fichiers ou de répertoires alternatifs. Exemple de sortie:
11/09/2014 12:54 AM 8,065 DEFAUL~1.XML Default Desktop Policy.xml
06/12/2014 03:49 PM <DIR> PROGRA~1 Program Files
10/12/2014 12:46 AM <DIR> PROGRA~2 Program Files (x86)
Maintenant, utilisez le nom de fichier ou de dossier court de 8 caractères dans la 5ème colonne, par exemple PROGRA~1 ou DEFAUL~1.XML, dans vos commandes. Par exemple:
set JAVA_HOME=c:\PROGRA~1\Java\jdk1.6.0_45
Entourez les chemins contenant des espaces avec des guillemets doubles.
cmd /C "C:\Program Files (x86)\WinRar\Rar.exe" a "D:\Hello 2\File.rar" "D:\Hello 2\*.*"
Essayez de fournir des noms de chemin complexes entre guillemets doubles (et incluez des extensions de fichier à la fin pour les fichiers.)
Pour les fichiers:
call "C:\example file.exe"
Pour Le Répertoire:
cd "C:\Users\User Name\New Folder"
Il est également applicable à tous les problèmes d'adresse similaires. Et une bonne chose, cmd n'est pas sensible à la casse comme bash. Donc " nouveau fichier.txt" et "nouveau fichier.TXT " est semblable à lui.
Je préfère joindre la commande ()
, qui est valide batch
ce qui le rend un peu plus facile à lire:
cmd /C ("C:\Program Files (x86)\WinRar\Rar.exe" a "D:\Hello 2\File.rar" "D:\Hello 2\*.*")
Vous devriez essayer d'utiliser des guillemets.
cmd /C "C:\Program Files (x86)\WinRar\Rar.exe" a "D:\Hello 2\File.rar" "D:\Hello 2\*.*"
set "CMD=C:\Program Files (x86)\PDFtk\bin\pdftk"
echo cmd /K ""%CMD%" %D% output trimmed.pdf"
start cmd /K ""%CMD%" %D% output trimmed.pdf"
Cela a fonctionné pour moi dans un fichier batch
Il peut résoudre ce problème par la commande cd , cette commande comprend les espaces sans guillemets doubles et vous pouvez appeler n'importe quel programme de cette façon par exemple:
C:\Windows\system32 > cd c:\Program fichiers \ MongoDB \ serveur \ 3.2 \ bin
C:\Program fichiers \ MongoDB \ serveur \ 3.2 \ bin > mongo maintenant, l'invite de commande appelle mongo.exe