Не удается выполнить новую установленную программу

Я не думаю, что правильный ответ можно дать без «технического жаргона». Поскольку этот вопрос является первым, появившимся в Google для запроса «что такое оболочка для входа», я предоставляю более правильный ответ ниже:

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

Запуск оболочки с аргументом -l или --login при условии, что он ее знает (я не знаю никаких оболочек, которые не знают , но --login поддерживается только несколькими оболочками). Запуск оболочки с argv[0] установлен на -{some_string} (т. Е. С HYPHEN-MINUS, добавленным к обычному argv[0] или к какой-либо другой строке). Это то, что ssh и su делают: su просто запускает исполняемый файл с -su как argv[0] (привет всем, кто думает, что argv[0] имеет какое-то отношение к текущему запущенному исполняемому имени), ssh запускает zsh с -zsh, когда пользователь установил /bin/zsh как его оболочка.

Лояльность оболочки абсолютно не имеет никакого отношения к тому, что кто-то спрашивает вас пароль или выполняет какую-либо другую процедуру аутентификации. Некоторые программы, такие как ssh или login (или некоторые эмуляторы терминала, такие как urxvt), запускают оболочки как логин, используя argv[0], который начинается с HYPHEN-MINUS. Некоторые, например su или sudo (или zsh: см. Модификатор precommand -, описанный в разделе PRECOMMAND MODIFIERS в man zshmisc), не делают этого по умолчанию, но могут быть рассказаны так. У некоторых есть единственная возможность сообщить оболочке логин, используя свой аргумент (например, bash -l): ssh с аргументом команды (который явно сообщает ssh, что нужно запускать на удаленном конце).

Обычно лучше сначала проконсультироваться с документацией программы, используемой для вызова оболочки, чтобы определить, будет ли shell логин один и второй выполнять некоторые тесты, чтобы определить, будет ли приложение запускать оболочку входа (например, добавив echo в .profile ).

1
задан 19 January 2013 в 19:52

1 ответ

ну, на самом деле, это не будет работать таким образом.

вам нужно ввести имя этого файла. Обычно у cowsay могут быть аргументы.

например loot на изображении, которое я прикреплл

И я думаю, вам лучше двигаться с помощью man-страницы.

] Cowsay генерирует ASCII изображение коровы, говорящее что-то, предоставленное пользователем. Если запустить без аргументов, он принимает стандартный ввод, переносит текст сообщения, заданного примерно на 40 столбцов, и печатает корову, говорящую данное сообщение на стандартном выходе.
0
ответ дан 25 May 2018 в 02:19

Другие вопросы по тегам:

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