Краткое введение в программирование на Bash

Краткое введение в программирование на Bash

Авторы:

Жанры: Самиздат, сетевая литература, Программирование

Циклы: не входит в цикл

Формат: Полный

Всего в книге 9 страниц. У нас нет данных о годе издания книги.

Предлагаем вам познакомиться со статьей Гарольда Родригеса (Harold Rodriguez) Краткое введение в программирование на Bash

«Данное введение в программирование на bash прельстило меня своей краткостью и содержательностью. В то же время я изменил несколько примеров, потому что они делали слегка не то, что ожидается новичками. Начинающим текст будет полезен как отправная точка для начала написания скриптов. Опытным — как справочник. Удачного чтения!» Антон Чернышов, переводчик.

Читать онлайн Краткое введение в программирование на Bash


Часть I

Тема программирования на bash из разряда тех, которые могут быть рассмотрены и в пару, и в сотни страниц. Гарольд Родригес (Harold Rodriguez) объясняет эту тему в приведенном ниже руководстве из двух частей. Его прекрасный и яркий стиль позволил ему охватить все существенные черты программирования на bash буквально на нескольких страницах.

Если вы никогда не программировали на bash ранее — сейчас самое время начать. Даже если у вас мало знаний о том, что такое bash, вы вполне можете посмотреть на множество интересных скриптов, разбираемых Гарольдом.

Введение

Подобно остальным оболочкам, доступным в Linux, Bourne Again shell (bash) является не только, собственно, командной оболочкой, но и языком для написания сценариев (скриптов)[1]. Скрипты позволяют в полной мере использовать возможности оболочки и автоматизировать множество задач, которые иначе потребуют для своего выполнения ввода множества команд. Многие программы, работающие внутри вашего компьютера с Linux — это скрипты. Если вы захотите узнать, как они работают, или изменить их, важно понимать их синтаксис и семантику. Кроме того, понимая язык bash, вы сможете писать свои собственные программы, чтобы выполнять разные задачи теми способами, которые выберете сами.

Так все-таки программирование (programming) или написание скриптов (scripting)? 

Новичков в программировании, как правило, озадачивает разница между, собственно, программированием и языками скриптов. Программы, написанные на каких-то языках программирования, обычно гораздо более мощные по возможностям и работают намного быстрее, чем программы, написанные на языках сценариев. Примеры языков программирования — C, C ++ и Java. Создание программы на каком-либо языке программирования обычно начинается с написания исходного кода (текстовый файл, содержащий инструкции о том, как будет работать окончательная программа), затем его необходимо скомпилировать (собрать) в исполняемый файл. Этот исполняемый файл не так легко переносить между различными операционными системами. Например, если вы напишете на программу на C для Linux, вы не сможете запустить ее в Windows. Чтобы сделать это, вам придется перекомпилировать исходный код под Windows. Написание скрипта также начинается с написания исходного кода, который не компилируется в исполняемый файл. Вместо этого интерпретатор оболочки последовательно читает инструкции в файле исходного кода и выполняет их. К сожалению, поскольку интерпретатор должен читать каждую инструкцию, скорость исполнения скрипта обычно медленнее[2], чем у скомпилированной программы. Основным преимуществом скриптов является то, что вы можете легко переносить исходный файл в любую операционную систему и просто запускать их[3].

Bash — это язык сценариев. Он отлично подходит для написания небольших программ, но если вы планируете делать какие-то мощные приложения, выбор для этого какого-либо языка программирования предпочтительнее для вас. Другие примеры скриптовых языков Perl, Lisp, и Tcl.

Что нужно знать для написания своих скриптов?

Для этого необходимо знание основных команд Linux. Например, вы должны знать, как копировать, перемещать и создавать новые файлы. Обязательно умение использовать какой-либо текстовый редактор. Существуют три основных текстовых редактора в Linux: vi, emacs и pico[4]. Если вы не знакомы с vi или emacs, используйте pico или другой простой в использовании текстовый редактор.

Внимание!!!

Не следует учиться программировать на bash из-под пользователя root! В противном случае — может случиться все что угодно! Я не буду нести никакой ответственности, если вы случайно допустите ошибку и испортите вашу систему. Вы предупреждены! Используйте учетную запись обычного пользователя без каких-либо привилегий. Вы можете даже создать нового пользователя только для обучения написанию сценариев. Таким образом, худшее, что произойдет в данном случае — это исчезновение данных в каталоге этого пользователя.

Ваша первая программа на Bash

Нашей первой программой будет классическая «Hello World». Конечно, если уже вы программировали раньше, вы должно быть устали от таких примеров. Однако это — традиция и кто я такой, чтобы менять ее? Программа «Hello World» просто выводит слова «Hello World» на экран. Запустите текстовый редактор и наберите в нем следующее:

>#!/bin/bash

>echo "Hello World"

Первая строка сообщает Linux использовать интерпретатор bash для запуска этого скрипта. В этом случае, bash находится в каталоге /bin. Если у вас bash находится где-то еще, сделайте соответствующие изменения в данной строке. Явное указание интерпретатора очень важно, удостоверьтесь еще раз, что указали его, поскольку данная строка говорит Linux какой именно интерпретатор нужно использовать для выполнения инструкций в скрипте. Следующее, что нужно сделать, это сохранить скрипт. Назовем егоhello.sh. После этого вам нужно сделать скрипт исполняемым:

>$ chmod u+x hello.sh

Если вы не понимаете, что делает эта команда, прочтите справочную страницу команды chmod:

>$ man chmod

Как только это будет сделано, вы сможете запустить программу, просто набрав ее название:


С этой книгой читают
Самый близкий враг

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


Я ревную тебя к звёздам
Автор: Е. Петренко

Принцесса Лиира сделала только первый шаг к своей цели. Но уже приобрела и друзей, и любовь, и покровительство богов. И врагов, которые пожелали всё это отобрать при помощи проклятия забвения. Это можно изменить. Но путь болезненен и труден. Но дорога короче, если идти друг другу навстречу.


Арт-Терапия

На месте Саши Хомутова хочет оказаться каждый: красивая девушка, любимая работа, шикарная квартира, верные друзья. Но знакомство с барменшей круто изменило его взгляды. Веселая аспирантка художественного университета, раскрашивает рутину жизнь и показывая вещи под другим углом. Крепкая дружба постепенно перерастает в нечто большее. Что же это счастливый билет или тернистый путь?


Воровка
Автор: Яна Кроваль

Воровство — тяжёлое и опасное ремесло. А уж в будущем, где идёт масштабная борьба технологий — и подавно! Одно-единственное дело может прославить исполнителя на всю обитаемую вселенную, а может безвозвратно погубить его карьеру. За свою небольшую жизнь Аля успела испытать на себе все прелести и блага известности, по чистой случайности не наткнувшись на изнанку успеха. Однако за спокойствие всегда приходится платить, и чем дольше оно будет длиться, тем дороже выйдет расплата. Свежие задания, новые знакомства, неожиданные встречи и непредсказуемые ситуации… Ни одному вору не дано знать, чем обернётся очередная вылазка, и не придётся ли после неё в спешном порядке менять привычный уклад жизни.Наконец и Але пришёл припозднившийся счёт.


Загадки старых мастеров

Кто был первым поэтом в истории человечества? В чём тайна улыбки Джоконды? Кто изображён в центре Сикстинской капеллы? Что означают слова «Коня! Коня! Всё царство за коня!»? Как Андрей Рублёв подписал «Троицу»? Что поёт «Лютнист» Караваджо?Ответы на эти и многие другие вопросы вы найдёте в книге Александра Шапиро «Загадки старых мастеров».


Редька

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Мать уродов

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Мужчина-проститутка

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Том 10. Былое и думы. Часть 5

Настоящее собрание сочинений А. И. Герцена является первым научным изданием литературного и эпистолярного наследия выдающегося деятеля русского освободительного движения, революционного демократа, гениального мыслителя и писателя.В томах VIII–XI настоящего издания печатается крупнейшее художественное произведение Герцена – его автобиография «Былое и думы».Настоящий том содержит пятую часть «Былого и дум» А. И. Герцена, посвященную первым годам жизни писателя за границей. Часть состоит из разделов «Перед революцией и после нее», и «Русские тени».http://ruslit.traumlibrary.net.


Том 11. Былое и думы. Часть 6-8

Настоящее собрание сочинений А. И. Герцена является первым научным изданием литературного и эпистолярного наследия выдающегося деятеля русского освободительного движения, революционного демократа, гениального мыслителя и писателя.В томах VIII–XI настоящего издания печатается крупнейшее художественное произведение Герцена – его автобиография «Былое и думы».Настоящий том содержит VI, VII и VIII части «Былого и дум». В томе помещены также другие редакции глав и автоперевод главы «Роберт Оуэн» (ч. VI).http://ruslit.traumlibrary.net.