Общие сведения о Linux Shell и базовые советы по языку сценариев оболочки. Часть I.
Изображение говорит больше, чем слова, а изображение ниже рассказывает все о работе Linux.
Читайте также
- 5 сценариев оболочки для изучения программирования оболочки – часть II
- Путешествуя по миру сценариев BASH для Linux – часть III
Понимание оболочки Linux
- Оболочка: интерпретатор командной строки, который подключает пользователя к Операционной системе и позволяет выполнять команды или создавать текстовые сценарии.
- Процесс. Любая задача, которую пользователь запускает в системе, называется процессом. Процесс немного сложнее, чем просто задача.
- Файл: он находится на жестком диске (hdd) и содержит данные, принадлежащие пользователю.
- X-windows, также известный как окна: режим Linux, в котором экран (монитор) можно разделить на небольшие «части», называемые окна<, которые позволяют пользователю выполнять несколько действий одновременно и/или легко переключаться с одной задачи на другую и красиво просматривать графику.
- Текстовый терминал: монитор, который может отображать только текст, без графики или отображать очень простую графику.
- Сеанс: время между входом включением и выходом из системы.
Типы оболочки в стандартном дистрибутиве Linux
Оболочка Bourne. Оболочка Bourne была одной из основных оболочек, использовавшихся в ранних версиях, и стала стандартом де-факто. Его написал Стивен Борн в Bell Labs. Каждая Unix-подобная система имеет по крайней мере одну оболочку, совместимую с оболочкой Bourne. Имя программы оболочки Bourne — «sh», и обычно она находится в иерархии файловой системы по адресу /bin/sh.
Оболочка C. Оболочка C была разработана Биллом Джоем для Berkeley Software Distribution. Его синтаксис создан по образцу языка программирования C. Он используется в основном для интерактивного использования терминала, но реже для сценариев и управления операционной системой. Оболочка C имеет множество интерактивных команд.
Начало веселья! (оболочка Linux)
Существуют тысячи команд для пользователя командной строки, как насчет того, чтобы запомнить их все? Хм! Просто не можешь. Настоящая сила компьютера заключается в том, чтобы облегчить вашу работу, вам необходимо автоматизировать процесс и, следовательно, вам нужны сценарии.
Скрипты — это наборы команд, хранящиеся в файле. Оболочка может читать этот файл и обрабатывать команды так, как если бы они были набраны на клавиатуре. Оболочка также предоставляет множество полезных функций программирования, которые делают сценарии по-настоящему мощными.
Основы командного программирования
- Чтобы получить оболочку Linux, вам нужно запустить терминал.
- Чтобы узнать, какая у вас оболочка, запустите: echo $SHELL.
- В Linux знак доллара ($) обозначает переменную оболочки.
- Команда «echo» просто возвращает все, что вы вводите.
- Инструкция конвейера (|) приходит на помощь при объединении нескольких команд.
- Команды Linux имеют свой собственный синтаксис, Linux не простит вам никаких ошибок. Если вы дадите команду неправильно, вы ничего не завалите и не повредите, но это не сработает.
- #!/bin/sh – это называется шебанг. Он пишется в верхней части сценария оболочки и передает инструкции программе /bin/sh.
О сценарии оболочки
Сценарий оболочки — это простой текстовый файл с расширением «.sh», имеющий разрешение на выполнение.
Процесс написания и выполнения скрипта
- Открытый терминал.
- Перейдите к месту, где вы хотите создать скрипт, с помощью команды «cd».
- Cd (введите) [Появится подсказка Ваш домашний каталог].
- коснитесь hello.sh (здесь мы назвали сценарий hello, помните, что расширение «.sh» является обязательным).
- vi hello.sh (nano hello.sh) [Для редактирования сценария вы можете использовать свой любимый редактор].
- chmod 744 hello.sh (сделать скрипт исполняемым).
- sh hello.sh или ./hello.sh (запуск сценария)
Написание вашего первого сценария
#!/bin/bash
My first script
echo "Hello World!"
Сохраните приведенные выше строки в текстовый файл, сделайте его исполняемым и запустите, как описано выше.
Пример вывода
Hello World!
В приведенном выше коде.
#!/bin/bash (is the shebang.)
My first script (is comment, anything following '#' is a comment)
echo “Hello World!” (is the main part of this script)
Написание второго сценария
Хорошо, пора переходить к следующему сценарию. Этот скрипт сообщит вам ваше «имя пользователя» и перечислит запущенные процессы.
#! /bin/bash
echo "Hello $USER"
echo "Hey i am" $USER "and will be telling you about the current processes"
echo "Running processes List"
ps
Создайте файл с приведенными выше кодами, сохраните его в любом месте, но с расширением «.sh», сделайте его исполняемым и запустите со своего терминала.
Пример вывода
Hello tecmint
Hey i am tecmint and will be telling you about the current processes
Running processes List
PID TTY TIME CMD
1111 pts/0 00:00:00 bash
1287 pts/0 00:00:00 sh
1288 pts/0 00:00:00 ps
Было ли это круто? Написать сценарий так же просто, как придумать идею и написать конвейерные команды. Есть и некоторые ограничения. Сценарии оболочки отлично подходят для кратких операций с файловой системой и создания сценариев для сочетания существующих функций фильтров и инструментов командной строки через каналы.
Когда ваши потребности возрастают – будь то функциональность, надежность, производительность, эффективность и т. д. – тогда вы можете перейти к более полнофункциональный язык.
Если вы уже знаете язык программирования C/Perl/Python или любой другой язык программирования, изучение языка сценариев не составит большого труда.
Написание третьего сценария
Переходим к написанию нашего третьего и последнего сценария в этой статье. Этот сценарий действует как интерактивный сценарий. Почему бы вам самим не выполнить этот простой, но интерактивный сценарий и не рассказать нам, что вы почувствовали.
#! /bin/bash
echo "Hey what's Your First Name?";
read a;
echo "welcome Mr./Mrs. $a, would you like to tell us, Your Last Name";
read b;
echo "Thanks Mr./Mrs. $a $b for telling us your name";
echo "*******************"
echo "Mr./Mrs. $b, it's time to say you good bye"
Пример вывода
Hey what's Your First Name?
Avishek
welcome Mr./Mrs. Avishek, would you like to tell us, Your Last Name
Kumar
Thanks Mr./Mrs. Avishek Kumar for telling us your name
******************************************************
Mr./Mrs. Kumar, it's time to say you good bye
Ну это не конец. Мы постарались познакомить вас со сценарием. В нашей будущей статье мы подробно остановимся на этой теме скриптового языка, а точнее, на бесконечной теме скриптового языка, чтобы сделать ее более совершенной. Мы высоко ценим ваши ценные мысли в комментариях. Поставьте лайк и поделитесь нами, а также помогите нам распространить информацию. А пока просто расслабьтесь, оставайтесь на связи, следите за обновлениями.
Читайте также: 5 сценариев оболочки для изучения программирования оболочки – часть II