Это действительно просто из любопытства.Bash не выводит никаких сообщений об ошибке при несуществующих командах, начиная с точки
опечатка заставила меня заметить, что в Bash, следующее:
$ .anything
не не печатает какую-либо ошибку («ничего» не следует понимать буквально, это действительно может быть что угодно, и нет места после запятой).
Мне любопытно, как это интерпретируется в bash.
Обратите внимание, что echo $?
после такой команды возвращает 127. Обычно это означает, что «команда не найдена». Это имеет смысл в этом случае, однако мне кажется странным, что сообщение об ошибке не печатается.
Почему бы $ anything
фактически печатать bash:anything: command not found...
(при условии, что ни anything
CMD не находится в PATH), в то время как $ .anything
проскальзывает молча?
система: Fedora Core 22
версия Bash: GNU Баш, версия 4.3.39 (1) -release (x86_64-RedHat-Linux-гну)
EDIT:
Некоторые ниже комментарии указывают на проблему как невоспроизводимую вначале.
Ответ @ hek2mgl ниже суммирует большой вклад в этот вопрос, который был в конце концов нашли (по @nm), как воспроизводимый в FC22 и представленном в виде сообщения об ошибке в https://bugzilla.redhat.com/show_bug.cgi?id=1292531
я получаю '-bash: .anything: команда не found', вы можете сделать' тип .anything' – anubhava
'$ Тип .anything -bash: Тип: .anything: не found' – cornuz
Я согласен, это не воспроизводимый. – Michael