Názor k článku
Windows 10 Insider Preview 14316 s bashem je tu od Lael Ophir - Windows mají jiný koncept. Z hlediska kernelu může...

  • Článek je starý, nové názory již nelze přidávat.
  • 8. 4. 2016 8:39

    Lael Ophir (neregistrovaný)

    Windows mají jiný koncept. Z hlediska kernelu může název souboru obsahovat cokoliv vyjma oddělovače cesty \, klidně včetně binární nuly. NTFS to tak podporuje, jiné FS mohou mít omezení.

    Ve Win32 mají soubory jméno a nepovinnou příponu oddělenou (poslední) tečkou, která určuje typ souboru. Jméno nesmí obsahovat rezervované znaky <>:"/\|?*, Unicode codepoints 1-32, binární nulu, nesmí jít o rezervované jméno zařízení, nesmí končit mezerou ani tečkou atd. FS je z hlediska Win32 case insensitive.

    Na Unixech libc podle všeho popisuje jméno souboru jen jako null terminated string, s tím že nesmí obsahovat /, a jména jsou case sensitive.

    Když v POSIX subsystému (resp. dnes ve Windows Subsystem for Linux) vytvoříte v adresáři "C:\my folder" soubor se jménem "my test <|> file ", tak k němu můžete bez problému přistupovat, protože kernel a NTFS s tím nemá problém. Z Win32 aplikací ale takový soubor neotevřete.

    Pokud jde o vlastní soubory nebo adresáře začínající tečkou, ty jsou z hlediska Win32 OK. Problém je v Exploreru, který nechce uživateli dovolit soubor s prázdným jménem, protože to ve Windows nemá smysl. Ovšem nevidím to jako zásadní problém, zvlášť ne u SW který je v beta verzi.

    Ad Když to widle ve výchozí konfiguraci nezvládnou, není to operační systém - dozvíme se i něco jako "když to neumí přehrávat MP3 s VBR, tak to není operační systém"? :D