История изменений
Исправление bormant, (текущая версия) :
Вопрос старый.
... но до настоящего времени не звучавший ;-)
Что с этим именем будет «не так»? Ядро его будет неправильно обрабатывать? Или «кто»?
До недавнего времени (до введения поддержки регистронезависимости в нативные ФС) ядру было глубоко фиолетово, что там в нативной ФС в имени, достаточно было знать, что там последовательность байт, завершающаяся нулём и не содержащая внутри '/' и \0, что прочитало, то и отдало, что дали, то и записало. Как эту последовательность проинтерпретирует вызывающий юзерспейс — его личное дело.
Как будет интерпретировать юзерспейс, можете поисследовать сами, тем более, что создавать кривые с точки зрения юзерспейса имена не запрещено.
$ echo $LANG
ru_RU.utf8
$ mkdir test; cd test
$ touch $'\xc1' # "а" в koi8-r
$ /bin/ls
?
$ /bin/ls -b # оно же --quoting-style=c
\301
$ /bin/ls --quoting-style=literal | iconv -f koi8-r
а
$ cd ..; rm -r test
В 'man ls' можно почитать про другие варианты квотирования «кривых» имён (см. --quoting-style=).
Исправление bormant, :
Вопрос старый.
... но до настоящего времени не звучавший ;-)
Что с этим именем будет «не так»? Ядро его будет неправильно обрабатывать? Или «кто»?
До недавнего времени (до введения поддержки регистронезависимости в нативные ФС) ядру было глубоко фиолетово, что там в нативной ФС в имени, достаточно было знать, что там последовательность байт, завершающаяся нулём и не содержащая внутри '/' и \0, что прочитало, то и отдало, что дали, то и записало. Как эту последовательность проинтерпретирует вызывающий юзерспейс — его личное дело.
Как будет интерпретировать юзерспейс, можете поисследовать сами, тем более, что создавать кривые с точки зрения юзерспейса имена не запрещено.
$ echo $LANG
ru_RU.utf8
$ mkdir test; cd test
$ touch $'\xc1'
$ /bin/ls
?
$ /bin/ls -b
\301
$ /bin/ls --quoting-style=literal | iconv -f koi8-r
а
$ cd ..; rm -r test
В 'man ls' можно почитать про другие варианты квотирования «кривых» имён (см. --quoting-style=).
Исходная версия bormant, :
Вопрос старый.
... но до настоящего времени не звучавший ;-)
Что с этим именем будет «не так»? Ядро его будет неправильно обрабатывать? Или «кто»?
До недавнего времени (до введения поддержки регистронезависимости в нативные ФС) ядру было глубоко фиолетово, что там в нативной ФС в имени, достаточно было знать, что там последовательность байт, завершающаяся нулём и не содержащая внутри '/' и \0, что прочитало, то и отдало, что дали, то и записало. Как эту последовательность проинтерпретирует вызывающий юзерспейс — его личное дело.
Как будет интерпретировать юзерспейс, можете поисследовать сами, тем более, что создавать кривые с точки зрения юзерспейса имена не запрещено.
$ echo $LANG
ru_RU.utf8
$ mkdir test; cd test
$ touch $'\xc1\
$ /bin/ls
?
$ /bin/ls -b
\301
$ /bin/ls --quoting-style=literal | iconv -f koi8-r
а
$ cd ..; rm -r test
В 'man ls' можно почитать про другие варианты квотирования «кривых» имён (см. --quoting-style=).