20Aug
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 till 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? Det är helt ned till några historiaolyckor som hände för å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/ tecknet som ett "switch" -tecken. Du kan fortfarande se detta idag i kommandotolken. Kör kommandot
dir / w berättar att dir-kommandot ska köras med det breda listformatalternativet, medan du kör kommandot dir c: \ berättar kommandot dir om att lista innehålletav 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 / tecknet för att indikera omkopplare.)Vid den tiden var det inte så att folk bryr sig om att de använde ett tecken som användes för ett annat syfte i ett annat operativsystem.
MS-DOS 2.0 introducerade support för kataloger, men IBM ville behålla kompatibiliteten med de ursprungliga DOS-verktygen och andra program som förväntade att / / tecknet skulle 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 arv av DOS 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-medarbetare som fattade dessa beslut.
Varför allt annat använder framåt snedstreck
Det här skulle inte riktigt betyda idag, men webbläsare följer Unix-konventionen och använder / karaktärer för webbadresser. En vanlig Windows-användare ser ett snedstreck när de skriver 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.
betyder det?
Den mer intressanta frågan är om det verkligen betyder något. 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 \ till Google Chrome, Mozilla Firefox eller Internet Explorer, korrigerar webbläsaren automatiskt den till http: //howtogeek.com/ och laddar webbplatsen normalt. Om du skriver C: /Users/ Public i Utforskaren 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/ i Command Prompt idag och du kommer att bli till den korrekta mappen.
Det 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 att du kan 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.