Это не специфично для htop, это специфично для bash. Это означает, что это оболочка входа в систему.
Иордания
3
@jordanm Не относится ни к bashодному, другие оболочки делают то же самое.
lcd047
Ответы:
30
Знак минус перед именем команды является соглашением, используемым программами входа в систему для запуска оболочек входа в систему. Программа Войти программу , где вы обычно введите пароль и начинает сеанс для вас, таких , как login, sudo -i, su -, SSHD, и т.д. Логин оболочка начальной оболочки в текстовом режиме сессии.
Традиционно, когда программа вызывает другую программу, она передает имя программы в качестве аргумента 0; аргументы командной строки нумеруются, начиная с 1. Например, при запуске cp foo barвыполняется исполняемый файл, расположенный в /bin/cp(на типичных системах), и передается cpкак аргумент 0, fooкак аргумент 1 и barкак аргумент 2. Обычное соглашение заключается в использовании Базовое имя исполняемого файла в качестве аргумента 0. Когда программа входа в систему вызывает оболочку, она нарушает это соглашение и ставит дополнительный дефис перед именем программы. Корпуса понимают это альтернативные конвенции и установить вещи должным образом для входа в оболочку, обычно читает файл инициализации , такие как ~/.profile, ~/.login, ~/.bash_profileи т.д. в зависимости от оболочки.
htop
, это специфично дляbash
. Это означает, что это оболочка входа в систему.bash
одному, другие оболочки делают то же самое.Ответы:
Знак минус перед именем команды является соглашением, используемым программами входа в систему для запуска оболочек входа в систему. Программа Войти программу , где вы обычно введите пароль и начинает сеанс для вас, таких , как
login
,sudo -i
,su -
, SSHD, и т.д. Логин оболочка начальной оболочки в текстовом режиме сессии.Традиционно, когда программа вызывает другую программу, она передает имя программы в качестве аргумента 0; аргументы командной строки нумеруются, начиная с 1. Например, при запуске
cp foo bar
выполняется исполняемый файл, расположенный в/bin/cp
(на типичных системах), и передаетсяcp
как аргумент 0,foo
как аргумент 1 иbar
как аргумент 2. Обычное соглашение заключается в использовании Базовое имя исполняемого файла в качестве аргумента 0. Когда программа входа в систему вызывает оболочку, она нарушает это соглашение и ставит дополнительный дефис перед именем программы. Корпуса понимают это альтернативные конвенции и установить вещи должным образом для входа в оболочку, обычно читает файл инициализации , такие как~/.profile
,~/.login
,~/.bash_profile
и т.д. в зависимости от оболочки.См. Также Разница между Оболочкой входа в систему и Оболочкой без регистрации?
источник