Могу ли я настроить свой bashrc на эхо $? после определенной команды?

Есть две проблемы, которые я вижу сразу (, кроме попытки экспериментальных конфигураций pam на общем, а не только на одном сервисе ), что su всегда аутентифицируется как root, тогда как sudo обычно аутентифицируется как пользователь, и su имеет строка, достаточная для аутентификации, и вы используете запись в квадратных скобках в общем файле. Нотация скобок не всегда устанавливает ваше состояние успеха. Это можно исправить, добавив строку разрешения auth required перед exec или удалив нотацию скобок, поскольку для вашего варианта использования она не нужна, или также используя нотацию скобок в корневой строке ok, чтобы сбой достаточного теста не устанавливал отрицательный успех.

3
26.07.2019, 21:30
1 ответ

Использование функции:

foo () {
    command foo "$@"
    echo "$?"
}

Это просто выполнит команду fooс любыми предоставленными аргументами, а затем отобразит статус выхода после этого.

Вы также можете захотеть, чтобы функцияfooвозвращалась с тем же статусом выхода, что и командаfooс :

.
foo() {
  local ret
  command foo "$@"
  ret="$?"
  echo "$ret"
  return "$ret"
}
7
27.01.2020, 21:12

Теги

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