Новости МирТесен

voinkiber@bk.ru


Новости МирТесен

Управляя временем (скрипты)

Поделиться:

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

Так вот. Если мы решили заняться чем-то серьезно (а мы хотим быть специалистами в области IT), мы всегда должны думать о том как сократить время, которое затрачиваем. Ну, а если мы не только думаем, а ещё и реализовываем это, то наш потенциал становится гораздо ВЫШЕ.

На сегодняшний день, конечно, автоматизация — главный двигатель прогресса. Различные устройства, машины, ПО давно уже эффективно служат людям, выполняя как общие, так и индивидуальные задачи. Однако, не каждый может позволить себе такое удовольствие — любая автоматизация требует денежных или трудовых затрат. Если у вас есть деньги — вы можете заказать себе всё что угодно и в любом исполнении, если нет — надо потрудиться.

Умение писать скрипты весьма полезно и необходимо для деятельности многих IT-специалистов. В этом нет сомнения. И поэтому сегодня мы познакомимся с написанием скриптов в Linux.

Итак. Скрипт (англ. script)  — это сценарий, по которому выполняются действия системой. Своего рода программа, имеющая дело с другими программами и их компонентами. Сценарий позволяет автоматизировать пользовательскую работу в системе.

В Linux писать скрипты невероятно удобно и просто — стоит только разобраться и всё: больше вы не захотите выполнять без скриптов повседневные рутинные дела.

Для написания нам понадобиться любая ОС Linux (у нас это будет BackBox) и желание (куда ж без него то).

В качестве примера будем автоматизировать настройку подключения по SSH сертификатам, которую мы рассмотрели в прошлой статье.

Начнем с. Заходим в консоль нашей системы. Вводим:

# nano autossh.sh (*выбор текстового редактора зависит от предпочтений, мы же выбрали nano)

И у нас открывается текстовый редактор, обрабатывающий ещё не сохраненный в файловой системе файл с именем autossh.sh (название может быть любое, но на конце скрипта всегда должен быть указан формат .sh). В самом начале любого скрипта мы всегда прописываем строку, сообщающую системе какой интерпретатор будет использоваться для выполнения кода:

#! /bin/bash

Далее пропишем команду, которая будет выводить заданное нами сообщение на определенном моменте выполнения скрипта:

echo «NEW CONNECTION»

Такие сообщения рекомендуется всегда ставить перед командами, дабы можно было наблюдать за ходом выполнения скрипта (это особенно полезно при поиске ошибок).

Выделим место в памяти для переменных: одна будет запоминать IP-адрес, другая — имя пользователя, под которым будем подключаться на удаленный сервер:

ip=$1

name=$2

Затем добавим команды, которые по-очереди считают введенные нами данные и добавят их в указанные переменные:

read ip

read name

Укажем на проверку связи с сервером:

ping -c 2 $ip

Теперь добавим генерацию ключей:

ssh-keygen -t ed25519 -f /root/.ssh/id_ed25519

Отправка публичного ключа серверу:

ssh-copy-id -i /root/.ssh/id_ed25519.pub $name@$ip

Добавление приватного ключа:

ssh-add /root/.ssh/id_ed25519

(*Необходимо отметить, что скрипты могут быть гораздо больше чем написанный нами, а также могут содержать огромное множество переменный, функций, команд. Для облегчения работы с подобным активно пользуются комментариями. Строка комментария в Linux начинается с #. *)

Подключение к серверу:

ssh $name@$ip -v «

В конечном итоге выглядит это так:

После записи всего изложенного мы должны сохранить файл, выйти из редактора и присвоить право исполнения нашему файлу командой:

# chmod +x autossh.sh

Всё, теперь можем проверить работу скрипта:

# ./autossh.sh

(*вместо «./» можно также использовать bash:

# bash autossh.sh *)

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

2 комментария для “Управляя временем (скрипты)”

  1. Спасибо, очень полезная статья!

  2. СПАСИБО ОЧЕНЬ ПОДРОБНО И ПРОСТО

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Новости МирТесен