Командная строка зарезервированных токенов

При создании приложения с CLI полезно избегать использования токенов, которые обычно используются для функций оболочки.

Например, | используется для передачи вывода одного приложения на вход следующего.

Пожалуйста, предоставьте полный список токенов, которые должны быть экранированы для использования?

Как минимум / резюме, для каждого токена, пожалуйста, укажите соответствующие ОС / оболочки, простое объяснение того, что делает токен, и любые методы escape.

(Другая полезная информация приветствуется, как только вышеперечисленное становится понятным.)

3 ответа

Как насчет того, чтобы начать с Unix?

В системах Windows и MS-DOS следующие недопустимые имена файлов:

CON, PRN, AUX, CLOCK$, NUL
COM0, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9
LPT0, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9

В редких случаях, когда вы можете обойти это ограничение и создать такие файлы, вы столкнетесь с проблемами, пытаясь получить к ним доступ или просмотреть их.

Фернандо Мигелес дал вам отличный источник информации. Практически проще определить, какие символы не имеют особого значения. Этот список будет:

A-Z a-z 0-9 _ - . , / + @

Любой другой знак препинания в ASCII имеет где-то особое значение. Некоторые члены этого списка имеют особое значение в сочетании с другим персонажем; например, '$@' а также '$-оба являются особенными, но$говорит вам, что, а не@' или же '-".

Другие вопросы по тегам