Любой способ перечислить подобные команды?

Когда вы неправильно записываете имя команды, bash часто делает это:

septi@norbert:~$ good No command 'good' found, did you mean: Command 'gold' from package 'binutils' (main) Command 'gmod' from package 'gmod' (universe) Command 'goo' from package 'goo' (universe) Command 'god' from package 'god' (universe) Command 'geod' from package 'proj-bin' (universe) Command 'gord' from package 'scotch' (universe) good: command not found 

Или иногда он делает это:

 septi@norbert:~$ nftp No command 'nftp' found, but there are 23 similar ones nftp: command not found 

Есть ли способ попросить bash показать эти 23 похожие команды для меня? И есть ли способ показать аналогичные команды, в том числе те, которые еще не установлены, вместо запуска приложения, например, ftp ?

Bash использует команду /usr/lib/command-not-found для поиска похожих команд. Это, в свою очередь, использует модуль CommandNotFound Python.

Вывод, который вы видите на терминале ( stderr в этом случае), также генерируется из этого модуля. Местоположение этого модуля: /usr/lib/python3/dist-packages/CommandNotFound/CommandNotFound.py , на Ubuntu 14.04 и выше. Существует ограничение по умолчанию для числа похожих команд в функции CommandNotFound.print_spelling_suggestion(self, word, min_len=3, max_len=15) в строке 138. Вы можете изменить значение max_len чтобы сказать 30 (используйте sudo nano или gksudo gedit для редактирования этого файла).

Вполне вероятно, что 23 «похожие» команды не будут намного более полезны для вас, чем «goo», «god» и «gord». Маленький трюк, используемый большинством bash'ers для поиска вещей, заключается в использовании страниц man, поскольку поиск основан на содержании, а не только по имени. Например, попробуйте

 man -k ftp 

Если вы обнаружите, что вероятная или instestesting-команда просмотрит страницу man, сбросив ключ -k:

 man sftp 

у человека есть своя страница руководства:

 man man 

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

О, да, для поиска в или для man-страниц, которые вы еще не установили, вам может понравиться один из многих онлайн-сайтов, таких как этот .