Невозможно использовать диспетчер virt -после удаления firewalld

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

Причина ошибки

Эта ошибка обычно возникает, когда вы вызываете функцию из самой себя, что приводит к рекурсии. Это может произойти непреднамеренно, когда вы даете функциям то же имя, что и внешняя команда или встроенная функция, используемая внутри этой функции. Например:

echo () {
    echo "Out: " $@
}

Команда echoбудет работать нормально до того, как вы определите эту функцию, но после определения произойдет сбой с этой ошибкой:

% echo foobar
echo:1: maximum nested function level reached; increase FUNCNEST?

(Разница в тексте сообщения, вероятно, связана с используемыми версиями zsh, в моем случае это 5.6.2)

Это также может произойти из-за того, что несколько функций вызывают друг друга:

foo () {
    echo $@
}

echo () {
    something_else
    foo $@
} 

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

% echo foobar
echo:1: maximum nested function level reached; increase FUNCNEST?

или

% echo foobar
foo:2: maximum nested function level reached; increase FUNCNEST?

В случае вопроса кажется, что функция с именем bashвызывается в строке 30 какой-то функции.

Исправление

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

  • Если вам нужна встроенная команда -, просто добавьте перед нейbuiltin:

    echo ()
    {
        builtin echo "Out: " $@
    }
    
  • Если вам нужна внешняя команда, добавьте перед нейcommand:

    echo ()
    {
        command echo "Out: " $@
    }
    

    или используйте полный путь

    echo ()
    {
        /bin/echo "Out: " $@
    }
    

Если вы не уверены, где вы используете bashв конфигурации zsh, вы можете использовать grepдля рекурсивного поиска ${TOOLS_HOME}/cli/:

grep -r bash ${TOOLS_HOME}/cli/
0
03.02.2021, 00:10
0 ответов

Теги

Похожие вопросы