Практическая работа - первый сценарий bash

2 мин на чтение (3.065 символов)

Основное задание

В данной работе мы напишем для вывода фразы “Hello world!” специальный сценарий.

  1. Создайте файл hello.sh.
  2. Откройте данный файл для редактирования в текстовом редакторе.
  3. Запишите первую строку файла: #!/bin/bash. Это так называемый “шебанг” - специальная инструкция, сообщающая операционной системе, что данный файл нужно воспринимать именно как Bash-сценарий и использовать для его выполнения командную оболочку Bash.
  4. Запишите вторую строку в файл: echo “Hello world!”. Данная команда выводит на экран фразу “Hello world!”.
  5. Выполните полученный сценарий: bash hello.sh
  6. Для того чтобы сценарий можно было выполнить как обычную программу, нужно сделать файл сценария исполняемым: chmod +x hello.sh
  7. Попробуйте запустить сценарий как обычную программу: ./hello.sh.
  8. Попробуйте запустить сценарий без указания пути: hello.sh. Данная команда не работает, так как она отсутствует в перечне путей в переменной $PATH. $PATH содержит список каталогов, разделенных “:”, в которых командная оболочка последовательно ищет исполняемый файл.
  9. Создайте в домашнем каталоге каталог bin и переместите туда файл hello.sh.
  10. Добавьте директорию ~/bin в переменную $PATH оператором конкатенации строк bash.
  11. Попробуйте запустить сценарий без указания пути: hello.sh. Так как сценарий теперь расположен по пути, который есть в $PATH, команда должна сработать и вывести на экран “Hello world!”.

Примечание. Данный сценарий будет доступен только текущему пользователю. Для того чтобы сценарий работал у всех пользователей системы, его нужно скопировать в каталог /usr/local/bin (для этого потребуются права root).

Задания для самостоятельного выполнения

  1. Разработать сценарий, который создаёт каталог /tmp/shared и устанавливает на него права доступа rwxrwxrwx.
  2. Получите и выведите на экран, используя переменные окружения, имена текущего каталога и домашнего каталога.
  3. Создайте новую переменную NEWVAR со значением 1982.
  4. Создайте скрипт, который создает пользователя с именем, переданным скрипту как первый параметр и паролем, который передан скрипту как второй параметр.
  5. (*) Создать скрипт, осуществляющий вывод меню, состоящего из следующих пунктов :
    1. текущий пользователь,
    2. объем используемой памяти,
    3. объем дискового пространства,
    4. запущенные процессы,
    5. процессы, запущенные текущим пользователем,
    6. системная дата и время,
    7. время запуска системы
    8. выход,

    и вывод соответствующей информации в зависимости от выбранного пункта меню. Процесс повторять до тех пор, пока не будет выбран пункт меню «выход».

  6. (*) Создайте скрипт, который устанавливает в систему СУБД PostgerSQL, создает нового пользователя, заводит соответствующую роль в базе данных, создает базу данных в PostgerSQL, дает данному пользователю все права в этой базе, открывает к СУБД доступ по сети с удаленных машин.

Необходимые команды следует добавить в тот же файл сценария, который создавался для выполнения основного задания. Также необходимо добавить комментарии (пояснения, где какое задание выполнено).

Дата изменения: