Qual è la differenza tra barre in avanti e barre rovesciate nei percorsi? [duplicare]


9

Possibile duplicato:
perché Windows utilizza le barre rovesciate per i percorsi e le barre in avanti di Unix?

Qual è la differenza principale tra barra (/) e barra rovesciata (\) in riferimento ai percorsi, sia remoti che locali?

Se ricordo bene, la barra rovesciata viene utilizzata per indicare qualcosa all'interno del computer o della rete corrente come C: \ Windows o \\ 172.12.1.34, mentre le barre in avanti vengono utilizzate per indicare qualcosa che è esterno o esterno al computer o alla rete corrente come come http://www.google.com/ .

Vorrei sapere se questa è una spiegazione accurata o se la differenza è in realtà più profonda di questa, e gli esempi che ho dato sono solo casuali.


3
windows '\' rest of world '/'
mic84

1
Dovresti davvero leggere le risposte che sono già qui, mic84. Hanno già dimostrato che non è vero.
JdeBP,

l'ho lasciato cadere e ho provato a rimuovere mi dispiace, sono stato seduto qui con questa pagina aperta pensando che fosse stato cancellato scusa
mic84

Risposte:


11

Unix e le sue varianti hanno sempre usato la barra (/) per indicare la gerarchia del filesystem.

Tuttavia, Windows deve il suo delimitatore del filesystem, la barra rovesciata (\), al suo predecessore MS-DOS. E MS-DOS non ne era il creatore. È stato portato dal sistema operativo QDOS (preso in prestito da CP / M), che MS ha acquistato e rielaborato in MS-DOS.

Dal momento che la maggior parte, se non tutti, dei protocolli basati sul web originati su UNIX (HTTP, FTP, ecc.), Microsoft si attiene a tali delimitatori per mantenere la compatibilità.


1
MS non ha acquistato CP / M. MS acquistò QDOS (Quick and Dirty DOS), che era un semplice clone di CP / M, e lo rielaborò in MS-DOS.
Keith,

@keith - sei corretto. Risolto il problema con la mia risposta.
Keltari,

4

Questa non è una spiegazione accurata. Il separatore di percorso è solo un personaggio, un token, che è in qualche modo arbitrario ma di solito scelto per contrassegnare una separazione naturale. La barra rovesciata come separatore di percorso proviene dal lignaggio di CP / M, DOS e Windows. La barra viene da Unix e probabilmente da altri sistemi precedenti.

Il separatore del percorso dell'URL Internet è stato scelto per essere la barra poiché la maggior parte degli sviluppatori degli standard conosceva Unix. La barra Unix come separatore di percorso è generalmente considerata il separatore canonico. La sua posizione sulla tastiera facilita anche la digitazione per la maggior parte delle persone che devono inserirla molto.

Anche i linguaggi di scripting multipiattaforma, come Python, usano la barra è la "forma normalizzata" di specificare percorsi.


1
Notare anche DCL in VMS. I qualificatori sono preceduti da barre , proprio come in Microsoft command.
JdeBP,

2

A livello di implementazione, Windows gestirà '/' allo stesso modo di '\'. Vorrei solo usare '/'. Renderà tutte le tue applicazioni portatili. MySQL e python traducono anche '/' in qualsiasi cosa tu abbia bisogno sul tuo sistema, a seconda di quale separatore di percorso usano.

"\" Viene utilizzato in altre aree come le espressioni regolari e alcuni terminali e linguaggi di programmazione come carattere di escape. Ciò assicurerà che il prossimo carattere successivo verrà interpretato come un carattere letterale, come \ n \ r alla fine delle righe.

Per quanto riguarda la notazione relativa ai sistemi interni o esterni, ciò non è effettivamente vero. Il '/' era più popolare all'inizio con i sistemi * nix. Microsoft diventa popolare e ora "\" è ciò che la gente si aspetta. Ma come ho già detto, Microsoft deve essere conforme posix (posix uno standard su come dovrebbero funzionare i sistemi operativi), il che significa che è possibile sostituire tutti i "\" con "/" nella maggior parte dei luoghi e ogni cosa funzionerebbe senza problemi.


0

Principalmente è solo una convenzione.

Windows sembra favorire '\' mentre Linux e Unix sembrano favorire '/'

Puoi leggere in dettaglio i percorsi e le varie notazioni utilizzate su diversi sistemi su Wikipedia .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.