Как определить функцию, которая обрабатывает `command not found`?

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

в настоящее время при вводе, например, dgfgsdjagfghsdg ошибка zsh: command not found: dgfgsdjagfghsdg .

Есть ли способ определить функцию, которая получает типизированную команду (+ аргументы) в качестве параметра?

  • как прокручивать несколько строк в завершении экрана zsh
  • как я могу назвать команды git без «git» впереди?
  • Подсказка: замените пользовательский путь коротким словом, например ~ для дома
  • Исходный контроль и символическая ссылка для .zhistory
  • сбросить терминал с помощью сочетания клавиш (без клавиши ввода)
  • Zsh auto complete предлагает полные функции (_git _vim и т. Д.)
  • ZSH: `ls * (.)` Перечисляет только обычные файлы, но `ls * (/)` не перечисляет только каталоги
  • пользовательский zsh автозаполнение
  • One Solution collect form web for “Как определить функцию, которая обрабатывает `command not found`?”

    Да.

    • В оболочке Z это функция с именем command_not_found_handler .
    • В оболочке Bourne Again это функция с именем command_not_found_handle .

    дальнейшее чтение

    • Ошибка перехвата «команда не найдена» в zsh
    • как локально переопределить команду 'command_not_found_handle'?
    • (2x) zsh: команда не найдена
    • Никакая команда 'bla' не найдена, вы имели в виду 😕
    Interesting Posts

    Есть ли способ автоматически сохранить состояние системы, когда происходит паника ядра?

    Как вернуть активный пользователь / сеанс на рабочем столе Linux?

    Что такое / proc / <pid> / net / dev?

    Предупреждение: предупреждение: вы указали опцию -maxdepth после аргумента без опции

    После создания предупреждения .deb: dpkg: warning при удалении каталог / usr / local / bin не пуст, поэтому не удаляется

    Может ли вредоносное ПО, запущенное пользователем без прав администратора или sudo, нанести вред моей системе?

    Программирование пользовательского интерфейса Linux? (особенно для Python и Fortran)

    Как заставить Linux обнаруживать устройство PS / 2 (например, мышь) по требованию?

    Debian 8 Jessie, паника ядра при выключении

    Ubuntu загружается после GRUB (пустой экран), но работает после горячей перезагрузки Windows

    Regex & Sed / Perl: совместить слово, которому НЕ предшествует другое слово

    Насколько полезен сценарий Linux?

    Сценарий оболочки для перемещения старых файлов?

    Как использовать среду chroot'd на Android с внешним дисплеем, мышью и клавиатурой?

    Почему `mkdir ~ root / .ssh` то же самое, что и` mkdir / root / .ssh`?

    Linux и Unix - лучшая ОС в мире.