2012-06-05 16:19:06 +0000 2012-06-05 16:19:06 +0000
17
17

Hoe roep ik een programma op dat spaties in de bestandsnaam bevat?

Ik probeerde een commandoregel uit te voeren zoiets als dit: start /max C:\Program files\foo\ba.exe -somearguments.

Maar ik heb een probleem, de cmd retourneert een foutmelding zoiets als The system cannot found the C:\Program file en als ik de C:\Program files\foo\ba.exe tussen aanhalingstekens zet, start het gewoon een nieuw venster cmd in MAX mode en voert het programma niet uit.

Hoe los ik dit op?

Antwoorden (4)

15
15
15
2012-06-05 16:26:45 +0000

Alle bestandsnamen en paden die spaties bevatten, moeten tussen aanhalingstekens staan.

Wat je vraag betreft, wat denk je ervan om het pad te vermelden als:

start /max /d"C:\Program files\foo\" ba.exe -somearguments
15
15
15
2012-06-05 16:24:44 +0000

De fout is opgetreden omdat het systeem uw commando interpreteerde als het bestand C:\Program en file als een argument van uw commando. Het is duidelijk dat het bestand Program niet gevonden werd en deze foutmelding gaf.

Om het op te lossen, voeg je gewoon "" toe aan het pad tussen de woorden met het spatie teken of aan het hele pad:

start /max C:\"Program files"\foo\ba.exe -somearguments

of

start /max "C:\Program files\foo\ba.exe" -somearguments
4
4
4
2012-06-05 16:31:11 +0000

Hoewel het verpakken van het pad tussen aanhalingstekens het gemakkelijkst en duidelijkst te lezen is, kun je ook de oude DOS korte namen gebruiken (sinds DOS 8.3 naamgeving volgde, werden bestandsnamen langer dan 8 karakters afgekapt met ~1) voor bestanden. Deze namen bevatten geen spaties. Je kunt de korte namen voor bestanden zien met het DIR /X commando.

1
1
1
2018-05-04 12:48:54 +0000

In Win10 kun je dit proberen:

start /max C:\Program%20files\foo\ba.exe -somearguments