Bad command or file name

«Bad command or file name» — распространенное и неоднозначное сообщение об ошибке в MS-DOS и некоторых других операционных системах.[1]

COMMAND.COM, основной интерфейс MS-DOS, выдаёт это сообщение, когда первое слово команды не может быть интерпретировано. Для MS-DOS это слово должно быть именем внутренней команды, исполняемого файла или пакетного файла[2], поэтому сообщение об ошибке содержит точное описание проблемы, но легко вводит в заблуждение новичков. Хотя источником ошибки часто была неправильно введенная команда, формулировка создавала впечатление, что файлы, названные более поздними словами, были повреждены или имели недопустимые имена файлов. Позже формулировка сообщения об ошибке была изменена для большей ясности. В Windows NT отображается следующее сообщение об ошибке (где «foo» заменено словом, вызывающим ошибку):[3]

"foo" is not recognized as an internal or external command,
operable program or batch file.

Некоторые ранние оболочки Unix выдавали столь же загадочное сообщение «foo: no such file or directory» по тем же причинам. Большинство современных оболочек выдают сообщение об ошибке, похожее на «foo: command not found».[4][5][6]