Существуют ли типы оболочек Unix? [закрыто]

Вы даже читали руководство для mailx , особенно параметр -a ?

-a файл Прикрепите указанный файл к сообщению.

Из ответа Жиля , поскольку CentOS использует эту версию mailx :

С Heirloom mailx нет удобного способа. Одна из возможностей вставки произвольных заголовков - установить editheaders = 1 и использовать внешний редактор (который может быть скриптом).

 ## Подготовьте временный сценарий, который будет служить редактором. 
 ## Этот сценарий будет передан в ed. 
temp_script = $ (mktemp) 
cat > "$ temp_script" 
1a 
Content-Type: text / html 
. 
 $ r test.html 
w { {1}} q 
EOF 
 ## Вызвать mailx и указать ему, чтобы он запускал скрипт редактора 
EDITOR = "ed -s $ temp_script" heirloom-mailx -S editheaders = 1 -s "Subject" to @ address 

Postfix, безусловно, может отправлять электронные письма в формате HTML.

5
09.09.2018, 17:19
4 ответа

nologin, false и true — это не оболочки, а просто способы предотвратить вход в систему. Остаются те, которые заканчиваются на sh. Таким образом, поиск в /bin, /usr/binи т. д. поможет найти большинство установленных.

Затем возникает проблема «что такое оболочка?» является ли python, purl, tcl и т. д. оболочкой? Ну, наверное, нет, но где линия разделения? Поскольку true, falseи nologinне являются интерпретаторами (, не принимают пользовательский ввод, не являются языками и т. д. ), то они определенно на нет --внешняя сторона линии.

Однако оболочка входа в систему не обязательно должна быть оболочкой, она даже не должна быть интерактивной.

Вы можете поискать в Интернете, используя вашу любимую поисковую систему, оболочки Unix.

9
27.01.2020, 20:31

Это вопрос, на который сложно ответить. То, что большинство людей называют «оболочкой», является чтением -оценкой -циклом печати , и поэтому даже интерпретатор Python является оболочкой, при условии, что вы запускаете Python в интерактивном режиме. Однако это будет означать, что nologin не является настоящей оболочкой! Так что же такое оболочка?

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

  1. Оболочка Python в качестве оболочки входа в систему
  2. Nano как оболочка(хотя вы не можете отличить его от нормального, так как он полноэкранный)
  3. Кошка, бегущая как ракушка
  4. Топ работает как оболочка(хотя вы, опять же, не видите, что это оболочка)
  5. И программа привет, мир!

Однако это не то, что вы ожидаете от работы в качестве оболочки. Обычно вам нужно запустить одну из оболочек в /etc/shells. Например, мой содержит:

# /etc/shells: valid login shells
/bin/sh
/bin/bash
/bin/rbash
/bin/dash
/usr/bin/tmux
/usr/bin/screen

и ни один из снарядов, о которых я упоминал ранее! Так почему же они бегут?

Проще говоря, да, но только локально. Если вы посмотрите на справочную страницу shellsс man shells, вы обнаружите, что /etc/shellsв основном используется такими программами, как демоны FTP. Вот почему вы не видите оболочку nologinв /etc/shells:. Она предотвращает вход на FTP и другие не -демоны входа в систему, поскольку не находится там, в то же время предотвращая локальный вход в систему, будучи простой printf("This account is currently not available");программой, а не РЕПЛ.

Итак, отвечая на ваш вопрос :Существует только один тип оболочки, и это исполняемый файл. Если вы можете запустить программу, это оболочка.

5
27.01.2020, 20:31

Всё, что хочешь.

Оболочка — это просто приложение TTY. поэтому все, что вы можете запустить на TTY, может быть оболочкой.

Одним из примеров нетрадиционной оболочки может быть служба доски объявлений :пользователь заходит по ssh или telnet и вместо команды -получает BBs строку

3
27.01.2020, 20:31

I found there are shells like nologin, false, and true. What else are there?

Это не оболочки, как @ctrl -alt -delor уже указывал .

I don't know what to type to list the shells.

Вы не можете получить исчерпывающий список всех существующих оболочек. Это все равно, что попросить список всех существующих программ.

Whenever I search with linux shell types (and the likes), I get results in the context of illustrating differences between bash, csh, zsh, and the others you know.

Что очень удобно, потому что этопопулярные оболочки, с которыми вы, скорее всего, столкнетесь.

What is the keyword to use to learn more about the subject?

«Оболочка» также иногда упоминается как «REPL », «интерпретатор командной -строки» или «интерпретатор командного языка».

5
27.01.2020, 20:31

Теги

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