Які символи дозволені та які з них потрібно вимкнути в командному рядку в різних операційних системах?
Які символи дозволені та які з них потрібно вимкнути в командному рядку в різних операційних системах?
Відповіді:
У статті Вікіпедії про Імена файлів обговорюються символи імен файлів .
Цей твір може бути інформативним: Виправлення імен файлів Unix / Linux / POSIX .
У цій статті порівнюються ОС X та Windows XP: X проти XP: Заборонені символи у назвах файлів (PDF, див. Пр. 64-66).
Те, що не повинно бути у назвах файлів за 1000 доларів Alex
Я не знаю , які символи повинні бути ип втік, але в Linux, ймовірно , це не ідея добре , щоб уникнути символів , які можуть мати особливе значення , наприклад, «п» (переклад рядка), (закладка) «т» і інші, але це взагалі не проблема в роботі з файлами. Можливо, ви маєте на увазі "втекли", а не "без нагляду". Найпоширеніші з них - це те, що оболонка буде інтерпретувати, наприклад, пробіл, ">", "<" і т. Д. Дивіться деякі статті, які я пов’язував для обговорення цих питань.
Єдиними символами, не дозволеними в імені файлу в * nix, є NUL
і /
. В операційній системі Windows, тільки NUL
, :
і \
дійсно не допускається, але багато додатків обмежують , що в подальшому, а також запобігання ?
, *
, +
, і %
.
Ні в якому разі не потрібно уникати жодних символів в імені файлу, за винятком випадків, щоб не інтерпретуватися оболонкою.
Якщо ви створите файл в Windows за допомогою Провідника за допомогою одного з наступних символів, він скаржиться, що символи заборонені:
\ / : * ? " < > |
Хороша довідка тут:
Іменування файлів, шляхів та просторів імен
http://msdn.microsoft.com/en-us/library/aa365247%28VS.85%29.aspx
Далі Microsoft заявляє:
"... на платформах робочого столу на базі Windows, недійсні символи шляху можуть включати символи ASCII / Unicode з 1 по 31, а також цитата ("), менше (<), більше (>), pipe (|), зворотний простір (\ b), null (\ 0) та вкладка (\ t). "
http://msdn.microsoft.com/en-us/library/system.io.path.getinvalidpathchars.aspx
\ / : * ? " < > |
всіх і створити їх за допомогою mkdir в моїй системі GNU / Linux. Ви також можете mkdir '?'
створити ?
каталог. Я використовував файлову систему ramdisk та XFS, щоб перевірити це.
У Linux та інших сумісних системах POSIX "/" зарезервовано як роздільник каталогів, а "\ 0" (символ NULL) позначає кінець рядка. Все інше дозволено.