web-dev-qa-db-fra.com

Comment utiliser des espaces dans l'invite de commande?

Comment utiliser des espaces dans la ligne de commande Windows?

cmd /C C:\Program Files (x86)\WinRar\Rar.exe a D:\Hello 2\File.rar D:\Hello 2\*.*
160
faressoft

Les guillemets simples ne suffiront pas dans ce cas. Vous devez ajouter des guillemets autour de chaque chemin et mettre également la commande entière entre guillemets:

cmd /C ""C:\Program Files (x86)\WinRar\Rar.exe" a "D:\Hello 2\File.rar" "D:\Hello 2\*.*""
228
sakra

Je viens de comprendre que, dans le cas où le chemin implique l'utilisation de caractères d'espacement, par exemple, lorsque je dois accéder à l'application xyz, cet emplacement est:

C:\Program Files\ab cd\xyz.exe

Pour exécuter cela à partir de l'invite de commandes Windows, vous devez utiliser

C:\"Program Files"\"ab cd"\xyz.exe

ou

"C:\Program Files\ab cd\xyz.exe"
66
Mithil D

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 
19
RobE

Placez 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\*.*"
9
JAB

Essayez de fournir des noms de chemin complexes entre guillemets (et incluez les extensions de fichier à la fin des fichiers).

Pour les fichiers:

call "C:\example file.exe"

Pour l'annuaire:

cd "C:\Users\User Name\New Folder"

Cela s'applique également à tous les problèmes d'adresse similaires. Et une bonne chose, cmd n’est pas sensible à la casse comme bash. Donc "New fiLE.txt" et "new file.TXT" lui ressemblent.

8
Vaisak Mohan

Je préfère inclure la commande dans () 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\*.*")
7
Dan
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

2
James Brown

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\*.*"
1
Jaanus

Ajoutez simplement des guillemets

Exemple: "C:\Utilisateurs\Nom d'utilisateur"

J'espère que ça a été résolu!

1
Patrick Prakash