Щелкните правой кнопкой мыши -виртуальную машину в списке, щелкните «Настройки», щелкните «Система» в меню слева и измените «Указывающее устройство» на «Планшет USB» вместо «Мышь PS/2».
Это определение функции. Точнее, это определение двух функций с одинаковым кодом. Это выглядит необычно, потому что zsh имеет несколько расширений базового синтаксиса определения функций name () { instruction; … }
:
name1 name2 () { instruction; … }
определяет функции name1
и name2
с одним и тем же телом. Я не знаю ни одной другой оболочки, поддерживающей это. .
в именах функций (, как, например, bash, но не dash или ksh93 ). В именах переносимых функций могут использоваться только буквы ASCII, цифры и символы подчеркивания. name () { instruction; … }
является наиболее распространенной формой, где тело представляет собой группу. name () ( instruction; )
также является переносимым и запускает тело функции в подоболочке. Другие составные команды технически допустимы, например name () if condition; then instruction1; else instruction2; fi
является определением функции, совместимым с POSIX -, но на практике это крайне необычно. name () echo hello
является вполне допустимым определением функции в соответствии с zsh (и ksh и dash ), но не в соответствии с POSIX или bash. ()
необязателен во всех оболочках. Чтобы отменить эффект grep.vars() *.py
, отключите две функции.
unset -f grep.vars
или
unfunction grep.vars
Вы определили функцию . Это действительно только в текущей оболочке.
Простая функция будет выглядеть примерно так
f() echo hello
Теперь команда "f" поздоровается
$ f
hello
Самый простой способ очистить это с помощью команды unset -f
.
В вашем случае:
unset -f grep