No Windows cmd &
é um caractere especial usado para separar vários comandos em uma única linha
& [...] command1 & command2
Use to separate multiple commands on one command line. Cmd.exe runs the first command, and then the second command.
https://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/ntcmds_shelloverview.mspx?mfr=true
Como resultado, cd Creating Project & External Execution
será executado como
cd Creating Project
External Execution
como o Comando de Frota disse. Como não há uma pasta chamada "Creating Project" e nenhum comando chamado External
, você obteve os erros acima.
Para resolver isso, você tem que escapar do &
de alguma forma. Existem 2 maneiras:
- Coloque aspas em volta do nome porque as citações internas
&
perdem seu significado especial
If it is a quote ("
) toggle the quote flag, if the quote flag is active, the following special characters are no longer special: ^ & | < > ( )
.
How does the Windows Command Interpreter (CMD.EXE) parse scripts?
cd "Creating Project & External Execution"
cd Creating Project ^& External Execution
Não há necessidade de escapar dos espaços porque cd
funciona bem com espaços no nome do arquivo 1 . Mas se você quiser, ainda pode escapar dos espaços como este cd Creating^ Project^ ^&^ External^ Execution
sem problema
1Oespaçonãoéumdelimitadoremcd
C:\>cd/?Displaysthenameoforchangesthecurrentdirectory.CHDIR[/D][drive:][path]CHDIR[..]CD[/D][drive:][path]CD[..]..Specifiesthatyouwanttochangetotheparentdirectory....CHDIRcommanddoesnottreatspacesasdelimiters,soitispossibletoCDintoasubdirectorynamethatcontainsaspacewithoutsurroundingthenamewithquotes.Forexample:cd\winnt\profiles\username\programs\startmenuisthesameas:cd"\winnt\profiles\username\programs\start menu"
which is what you would have to type if extensions were disabled.