2010-04-27 15:35:09 +0000 2010-04-27 15:35:09 +0000
235
235

Usando il comando cd nella riga di comando di Windows, non si può navigare verso D:\

Questa può essere una domanda stupida, e penso di aver guardato altrove per trovare la risposta… Potrebbe essere un problema di percorso, ma quando apro la riga di comando e digito da C:\>:

cd D:\

non riesco ad arrivare all'unità D. Anche se digito:

cd D:\<folder name>
``` &001 


Il `command.exe` completerà automaticamente la linea con il tasto tab, così saprà dove mi trovo. Semplicemente non stampa per visualizzare il risultato o per farmi arrivare lì. Questo problema esiste anche per i drive di rete. 


Ora, se uso il comando `chdir` (`cd`) in questo modo: 


`chdir D:` o `cd d:` 


ottengo la stampa dal `D:
Questa può essere una domanda stupida, e penso di aver guardato altrove per trovare la risposta... Potrebbe essere un problema di percorso, ma quando apro la riga di comando e digito da `C:\>`: 


cd D:\ “`

non riesco ad arrivare all'unità D. Anche se digito:

cd D:\<folder name>
``` &001 


Il `command.exe` completerà automaticamente la linea con il tasto tab, così saprà dove mi trovo. Semplicemente non stampa per visualizzare il risultato o per farmi arrivare lì. Questo problema esiste anche per i drive di rete. 


Ora, se uso il comando `chdir` (`cd`) in questo modo: 


`chdir D:` o `cd d:` 


ottengo la stampa dal  sotto il comando ma dice comunque che sono nel `C:
Questa può essere una domanda stupida, e penso di aver guardato altrove per trovare la risposta... Potrebbe essere un problema di percorso, ma quando apro la riga di comando e digito da `C:\>`: 


cd D:\ ”`

non riesco ad arrivare all'unità D. Anche se digito:

cd D:\<folder name>
``` &001 


Il `command.exe` completerà automaticamente la linea con il tasto tab, così saprà dove mi trovo. Semplicemente non stampa per visualizzare il risultato o per farmi arrivare lì. Questo problema esiste anche per i drive di rete. 


Ora, se uso il comando `chdir` (`cd`) in questo modo: 


`chdir D:` o `cd d:` 


ottengo la stampa dal `D:
Questa può essere una domanda stupida, e penso di aver guardato altrove per trovare la risposta... Potrebbe essere un problema di percorso, ma quando apro la riga di comando e digito da `C:\>`: 


cd D:\ “`

non riesco ad arrivare all'unità D. Anche se digito:

cd D:\<folder name>
``` &001 


Il `command.exe` completerà automaticamente la linea con il tasto tab, così saprà dove mi trovo. Semplicemente non stampa per visualizzare il risultato o per farmi arrivare lì. Questo problema esiste anche per i drive di rete. 


Ora, se uso il comando `chdir` (`cd`) in questo modo: 


`chdir D:` o `cd d:` 


ottengo la stampa dal  sotto il comando ma dice comunque che sono nel . 


mi sembra di perdere qualcosa di semplice.

Risposte (9)

334
334
334
2010-04-27 15:38:06 +0000

Tornando ai tempi del DOS, c'è una “directory corrente” separata per ogni unità. cd D:\foldername cambia la directory corrente di D: al nome della cartella specificata, ma non cambia il fatto che si sta ancora lavorando sull'unità C:.

Ciò che si vuole è semplice:

D:
``` ```
C:\Users\coneslayer>e:

E:\>c:

C:\Users\coneslayer>cd e:\software

C:\Users\coneslayer>e:

e:\Software>

Qui si può vedere come funziona la cosa della “directory corrente separata per ogni unità”:

&001

78
78
78
2012-01-19 14:17:48 +0000

Ha funzionato, perché il comando è progettato per funzionare.

Semplicemente non sai come dovrebbe funzionare.

Non stai usando un programma di shell Unix o Linux. Il comando cd nell'interprete di comandi di Microsoft non si comporta come i comandi cd in tali shell. Si comporta in modo un po’ diverso. In particolare, non sempre cambia directory. Nelle shell di Unix e Linux, cd imposta solo la directory di lavoro. Nell'interprete di comandi di Microsoft, cd a volte la interroga. Non c'è un comando pwd separato, quindi cd fa due lavori.

Se non gli si dà alcun argomento, o un argomento che è solo una lettera di unità e due punti senza un percorso, allora it riporta la directory corrente invece di cambiarla. Se non gli si forniscono argomenti, riporta la directory corrente dell'unità corrente del processo dell'interprete di comando. Se gli si dà solo una lettera di unità e due punti come argomento, riporta la directory corrente del processo dell'interprete di comandi del processo corrente di quell'unità. Ogni unità ha il proprio repertorio corrente nell'interprete di comandi. (Si tratta di una fiction mantenuta dalle librerie di run-time per le implementazioni di Microsoft e di diversi altri fornitori di vari linguaggi di programmazione. Win32 di per sé non funziona in questo modo).)

Quindi, quando gli avete dato d: come argomento, vi ha riportato la directory corrente del processo dell'interprete di comandi sul drive D, che per caso era `D:## Ha funzionato, perché il comando è progettato per funzionare.

Semplicemente non sai come dovrebbe funzionare.

Non stai usando un programma di shell Unix o Linux. Il comando cd nell'interprete di comandi di Microsoft non si comporta come i comandi cd in tali shell. Si comporta in modo un po’ diverso. In particolare, non sempre cambia directory. Nelle shell di Unix e Linux, cd imposta solo la directory di lavoro. Nell'interprete di comandi di Microsoft, cd a volte la interroga. Non c'è un comando pwd separato, quindi cd fa due lavori.

Se non gli si dà alcun argomento, o un argomento che è solo una lettera di unità e due punti senza un percorso, allora it riporta la directory corrente invece di cambiarla. Se non gli si forniscono argomenti, riporta la directory corrente dell'unità corrente del processo dell'interprete di comando. Se gli si dà solo una lettera di unità e due punti come argomento, riporta la directory corrente del processo dell'interprete di comandi del processo corrente di quell'unità. Ogni unità ha il proprio repertorio corrente nell'interprete di comandi. (Si tratta di una fiction mantenuta dalle librerie di run-time per le implementazioni di Microsoft e di diversi altri fornitori di vari linguaggi di programmazione. Win32 di per sé non funziona in questo modo).)

Quindi, quando gli avete dato d: come argomento, vi ha riportato la directory corrente del processo dell'interprete di comandi sul drive D, che per caso era . Se non gli aveste dato alcun argomento, vi avrebbe riportato `C:## Ha funzionato, perché il comando è progettato per funzionare.

Semplicemente non sai come dovrebbe funzionare.

Non stai usando un programma di shell Unix o Linux. Il comando cd nell'interprete di comandi di Microsoft non si comporta come i comandi cd in tali shell. Si comporta in modo un po’ diverso. In particolare, non sempre cambia directory. Nelle shell di Unix e Linux, cd imposta solo la directory di lavoro. Nell'interprete di comandi di Microsoft, cd a volte la interroga. Non c'è un comando pwd separato, quindi cd fa due lavori.

Se non gli si dà alcun argomento, o un argomento che è solo una lettera di unità e due punti senza un percorso, allora it riporta la directory corrente invece di cambiarla. Se non gli si forniscono argomenti, riporta la directory corrente dell'unità corrente del processo dell'interprete di comando. Se gli si dà solo una lettera di unità e due punti come argomento, riporta la directory corrente del processo dell'interprete di comandi del processo corrente di quell'unità. Ogni unità ha il proprio repertorio corrente nell'interprete di comandi. (Si tratta di una fiction mantenuta dalle librerie di run-time per le implementazioni di Microsoft e di diversi altri fornitori di vari linguaggi di programmazione. Win32 di per sé non funziona in questo modo).)

Quindi, quando gli avete dato d: come argomento, vi ha riportato la directory corrente del processo dell'interprete di comandi sul drive D, che per caso era `D:## Ha funzionato, perché il comando è progettato per funzionare.

Semplicemente non sai come dovrebbe funzionare.

Non stai usando un programma di shell Unix o Linux. Il comando cd nell'interprete di comandi di Microsoft non si comporta come i comandi cd in tali shell. Si comporta in modo un po’ diverso. In particolare, non sempre cambia directory. Nelle shell di Unix e Linux, cd imposta solo la directory di lavoro. Nell'interprete di comandi di Microsoft, cd a volte la interroga. Non c'è un comando pwd separato, quindi cd fa due lavori.

Se non gli si dà alcun argomento, o un argomento che è solo una lettera di unità e due punti senza un percorso, allora it riporta la directory corrente invece di cambiarla. Se non gli si forniscono argomenti, riporta la directory corrente dell'unità corrente del processo dell'interprete di comando. Se gli si dà solo una lettera di unità e due punti come argomento, riporta la directory corrente del processo dell'interprete di comandi del processo corrente di quell'unità. Ogni unità ha il proprio repertorio corrente nell'interprete di comandi. (Si tratta di una fiction mantenuta dalle librerie di run-time per le implementazioni di Microsoft e di diversi altri fornitori di vari linguaggi di programmazione. Win32 di per sé non funziona in questo modo).)

Quindi, quando gli avete dato d: come argomento, vi ha riportato la directory corrente del processo dell'interprete di comandi sul drive D, che per caso era . Se non gli aveste dato alcun argomento, vi avrebbe riportato .

Se volete che il comando cd sia sempre in modalità set e non sia mai in modalità query dovete aggiungervi l'opzione /D. Questo costringe il comando ad essere sempre in modalità set, e lo estende anche in modo da cambiare l'unità corrente e cambiare la directory corrente di un'unità. (In altre parole, funziona più come la sottostante API Win32)

Quindi, per esempio, la riga di comando

cd /d d:

cambierà la directory in qualsiasi directory sia la directory corrente sull'unità D, e cambierà anche l'unità corrente in D.

Se si vuole cambiare l'unità corrente del processo dell'interprete di comando, altrimenti, il comando cd non è il modo. Lo si fa semplicemente digitando la lettera dell'unità e i due punti:

d:

Ulteriore lettura

  • JP Software (2011). CD/CHDIR TCC On-line Help.

  • Microsoft corporation (2001). Chdir (CD) . TechNet Windows XP Riferimento linea di comando A-Z.

55
55
55
2010-04-27 16:28:25 +0000

Temo che questo non sia corretto. È vero fin dai tempi del DOS, ma la riga di comando in Windows NT e successivamente non è DOS. Nella riga di comando che tutti usano oggi, si ha l'interruttore /D. L'interruttore /d cambia la directory corrente dell'unità specificata E passa a quella directory. L'interruttore /d deve essere specificato prima del percorso. Per esempio:

C:\> cd /d D:\foo\bar\
D:\foo\bar\>
``` &001 


![windows command prompt cd](https://i.stack.imgur.com/ZDnF0.jpg)
20
20
20
2012-01-19 07:58:57 +0000

CD sta per C hange D irectory, e non Change Drive. Quindi non cambierebbe in D: così. Per ottenere questo si dovrebbe semplicemente digitare la lettera dell'unità

ad esempio

d:

9
9
9
2012-01-19 08:12:06 +0000

La directory di lavoro in cmd.exe è mantenuta su base volume-by-volume; la directory di lavoro per l'unità C: è diversa dalla directory di lavoro per l'unità D:.

Quando si passa solo una lettera di unità a cd, questa stampa la directory di lavoro per l'unità specificata.

Nel vostro caso, la directory di lavoro dell'unità D: è la root del volume stesso, D:La directory di lavoro in cmd.exe è mantenuta su basevolume-by-volume; la directory di lavoro per l'unitàC:è diversa dalla directory di lavoro per l'unitàD:`.

Quando si passa solo una lettera di unità a cd, questa stampa la directory di lavoro per l'unità specificata.

Nel vostro caso, la directory di lavoro dell'unità D: è la root del volume stesso, .

Per cambiare i volumi da C: a D: è sufficiente inserire la lettera dell'unità:

C:\>D:
D:\>
8
8
8
2012-01-19 13:33:59 +0000

Utilizzarecd /D D: per fare questo. È possibile specificare anche i percorsi.

5
5
5
2012-01-19 15:52:42 +0000

Se si desidera cambiare unità in un prompt di comandi DOS, è sufficiente scrivere:

[Drive Letter]:

Ad esempio, se si desidera passare all'unità D:\, è sufficiente digitare quanto segue in un prompt di comandi:

D:
2
2
2
2016-07-27 21:59:20 +0000

pushd funziona anche quando è necessario andare alla directory secondaria del drive, ad esempio D:\Tests\Logs.

Basta usarlo così:

pushd D:\Tests\Logs

Se si vuole tornare alla directory precedente usare popd:

C:\Users>pushd D:\Tests\Logs
D:\Tests\Logs>popd
C:\Users>
0
0
0
2016-06-23 22:24:36 +0000

Mentre si va a cercare l'opzione di ricerca nella barra degli strumenti e cercare cmd o selezionando windows All app selezionando il prompt dei comandi, si passa a qualche altro prompt di comandi. Invece provate a premere il pulsante windows + R e cercate cmd e cercate cmd in C:> drive. Da lì si può navigare fino a D:> o ovunque sia necessario