E ha fatto il lavoro, come il comando è progettato per funzionare.
Semplicemente non sai come dovrebbe effettivamente funzionare.
Non stai usando un programma shell Unix o Linux. Il cd
comando nell'interprete dei comandi di Microsoft non si comporta come i cd
comandi in tali shell. Si comporta in modo leggermente diverso. In particolare, non cambia sempre la directory . Nelle shell Unix e Linux, cd
imposta sempre e solo la directory di lavoro. Nell'interprete dei comandi di Microsoft, a cd
volte lo interroga. Non esiste un pwd
comando separato , quindi cd
due lavori.
Se non gli dai argomenti o un argomento che è solo una lettera di unità e due punti senza un percorso, allora segnala la directory corrente invece di cambiarla . Se non si forniscono argomenti, viene indicata la directory corrente dell'unità corrente del processo dell'interprete dei comandi. Se si fornisce solo una lettera di unità e due punti come argomento, viene indicata la directory corrente del processo dell'interprete dei comandi di tale unità. Ogni unità ha la propria directory corrente nell'interprete dei comandi. (Questa è una finzione gestita dalle librerie di runtime per le implementazioni di Microsoft e di altri fornitori di vari linguaggi di programmazione. Win32 stesso non funziona in questo modo.)
Quindi, quando lo hai fornito d:
come argomento, ti ha riportato la directory corrente del processo dell'interprete dei comandi sull'unità D, che è accaduto D:\
. Se non gli avessi dato alcun argomento, te lo avrebbe riferito C:\
.
Se si desidera che il cd
comando sia sempre in modalità impostata e mai in modalità query, è necessario aggiungere l' /D
opzione ad esso. Ciò impone che il comando sia sempre in modalità impostata e lo estende anche in modo da modificare l'unità corrente e modificare la directory corrente di un'unità. (In altre parole, funziona più come l'API Win32 sottostante in realtà.)
Quindi, ad esempio, la riga di comando
cd / dd:
cambierà la directory a qualunque sia la directory corrente sull'unità D e cambierà anche l'unità corrente sull'unità D.
Se si desidera modificare diversamente il processo corrente dell'interprete dei comandi 'unità corrente, il cd
comando non è il modo. Puoi farlo semplicemente digitando la lettera di unità e i due punti:
d:
Ulteriori letture
- JP Software (2011). Guida in linea di CD / CHDIR TCC.
- Microsoft Corporation (2001). Chdir (CD) . TechNet Windows XP Riferimento da riga di comando A – Z.
pushd
al posto dicd
praticamente ovunque in quanto si comporta molto meglio in situazioni come questa.