В системах Unix имена файлов могут содержать все символы, кроме:
/
(косая черта)
NUL
(ASCII ноль)
Кроме того, POSIX допускает любые символы, даже UTF-8, но это не означает, что каждое приложение (будь то оболочка, инструмент командной строки, файловая система и т.д.) Может обрабатывать его. По причинам переносимости вы должны использовать переносимый набор символов имени файла.
Просто убедитесь, что всякий раз, когда вы используете символы со специальным значением оболочки (например, *
globs), вы указываете имя файла, например, если ваш файл называется file*name
, используйте:
./some-command "file*name"