Hemsida » hur » Varför Windows använder backslashes och allt annat använder framåt snedstreck

    Varför Windows använder backslashes och allt annat använder framåt snedstreck

    Har du någonsin märkt att det är C: \ Windows \ i Windows, http://howtogeek.com/ på webben och / home / user / på Linux, OS X och Android? Windows använder backslashes för vägar, medan allt annat verkar använda framåt snedstreck.

    Modern programvara försöker automatiskt rätta dig när du skriver fel typ av snedstreck, så det spelar ingen roll vilken typ av snedstreck du använder mest av tiden. Men ibland är skillnaden fortfarande viktig.

    Varför Windows använder backslashes: En historia

    Så varför är Windows det udda operativsystemet ut? Det är helt ned till några historiaolyckor som hände årtionden sedan.

    Unix introducerade framåtskuren karaktär - det vill säga / karaktären - som sin katalogavskiljare runt 1970. Vi vet inte riktigt varför de valde den här, men det var det de valde.

    Det är svårt att föreställa sig idag, men den ursprungliga versionen av Microsoft DOS - det är MS-DOS 1.0 - stödde inte alls kataloger när den släpptes 1981. De flesta av de verktyg som ingår i DOS skrevs av IBM och de använde / tecken som en "switch" karaktär. Du kan fortfarande se detta idag i kommandotolken - kör kommandot dir / w berättar dir-kommandot att köra med alternativet vid brett listformat medan kommandot körs dir c: \ berättar dir-kommandot att lista innehållet i enhet C: \. De olika typerna av snedstreck här anger om du anger ett alternativ eller en katalogväg. (På Unix används tecknet istället för / tecken för att indikera omkopplare.)

    På den tiden bryr de sig inte riktigt om att de använde ett tecken som användes för ett annat syfte på ett annat operativsystem.

    MS-DOS 2.0 introducerade stöd för kataloger, men IBM ville behålla kompatibiliteten med de ursprungliga DOS-verktygen och andra program som väntade att / / tecknet ska användas för switchar. Microsoft hade redan använt / karaktären för något, så de kunde inte bara återanvända det. De valde i slutändan \ tecknet istället, eftersom det var den mest likartade karaktären visuellt.

    Windows kanske inte byggs ovanpå DOS längre, men du kan fortfarande se DOS arv i hela Windows i backslashes och andra funktioner som drivbokstäver används för filsystemet.

    Många av dessa detaljer är från Microsoft-anställda Larry Ostermans blogginlägg om ämnet, som innehåller mer detaljerad information från Microsoft-anställda som fattat dessa beslut.

    Varför allt annat använder framåt snedstreck

    Allt detta skulle inte riktigt betyda idag, men webbläsare följer Unix-konventionen och använder / karaktärer för webbadresser. En typisk Windows-användare ser en snedstreck framåt när de skriver in en webbadress och en backslash när de skriver platsen för en lokal mapp, så det kan vara förvirrande. Webbplatser följer Unix-konventionen, liksom andra protokoll som FTP. Även om du kör en webbserver eller FTP-server på en Windows-maskin, använder de framåt snedstreck eftersom det är vad protokollet kräver.

    Andra operativsystem använder framåt snedstreck av samma anledning - det är Unix-konventionen. Linux är ett Unix-liknande operativsystem, så det använder samma typ av snedstreck. Mac OS X är baserat på BSD, ett annat Unix-liknande operativsystem. Andra konsumentoperativsystem som Android, Chrome OS och Steam OS är baserade på Linux, så de använder samma typ av snedstreck.

    Spelar det någon roll?

    Den mer intressanta frågan är om det verkligen spelar roll. Webbläsare och operativsystemutvecklare verkar inse att användarna är förvirrade, så de går ofta ut ur deras sätt att acceptera vilken typ av slash som helst. Om du skriver http: \\ howtogeek.com \ i Google Chrome, Mozilla Firefox eller Internet Explorer, korrigerar webbläsaren automatiskt den på http://howtogeek.com/ och laddar webbplatsen normalt. Om du skriver C: / Users / Public i Windows Explorer och trycker på Enter, korrigeras den automatiskt till C: \ Users \ Public och du kommer till rätt plats.

    DOS-utvecklare var inte nöjda med detta även under de tidiga dagarna, så de gjorde DOS acceptera båda typerna av tecken för vägar. Du kan fortfarande skriva kommandon som cd C: / Windows / till Command Prompt idag och du kommer att bli till den korrekta mappen.

    Detta fungerar dock inte överallt i Windows. Om du skriver en sökvägen som C: / Users / Public i dialogrutan Öppna och trycker på Enter visas ett fel som säger att filnamnet inte är giltigt. Det finns andra webbaserade applikationer som kan visa dig ett fel om du försöker skriva en sökväg som http: \\ howtogeek.com \ - det beror på om programmet korrigerar det för dig eller beslutar att visa ett fel.


    Du kan vanligtvis glömma att det finns två olika typer av snedstreck, men det spelar ibland betydelse. Det vore trevligt om alla använde en konsekvent separator för katalogvägar, men Windows har historiskt sett handlat om bakåtkompatibilitet - även i början av 1980-talet.