...

Редактор скриптов что это за программа

Как автоматизировать сложные штуки на компьютере

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

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

Принципиальное решение

Мы попробуем заставить компьютер выполнять полезную работу без непосредственного участия пользователя: чтобы не нужно было двигать мышкой и нажимать на экранные кнопки.

Сделать это можно двумя принципиальными способами:

  1. Использовать программу, которая будет за нас двигать мышкой и нажимать клавиши — такие программы есть, но они не слишком стабильные
  2. Использовать служебные программы и скриптование — мы пойдём по этому пути

Что за служебные программы?

Мы привыкли, что программа в компьютере — это что-то, у чего есть окно, кнопки, пункты меню и т. д. И это имеет смысл, например, в графических или текстовых редакторах, когда экран необходим.

Но многие программы могут работать без графического интерфейса. Например, если вам нужно скопировать файл из одного места в другое, вам не обязательно смотреть в экран с папочками. Можно написать «откуда» и «куда», и программа должна всё выполнить. Или если мы написали программу на Python, которая обрабатывает большие данные, ей не обязательно выводить данные на экран. Из файла взяла — обработала — в файл положила.

Программы, которые могут работать без графического интерфейса, мы будем называть служебными. В чём их свойства:

  • Они запускаются из командной строки или из терминала.
  • У них может не быть графического интерфейса.
  • Чтобы объяснить им, что от программ нужно, используют параметры.
  • Параметры пишутся текстом при запуске программы.
  • Программа однажды получает параметры, исполняется и выходит. То есть можно один раз сказать, что программе делать, нажать энтер и уйти пить кофе — дальше программа справится сама.

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

Другой пример — программа chkdsk для Windows, которая может проверять флешки и жёсткие диски и исправлять ошибки на них. Эту программу можно запустить из консоли, указав параметры — что проверить и как:

Как автоматизировать сложные штуки на компьютере

Когда нужны служебные программы

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

А вот на серверах ситуация обратная: там не используют пользовательские приложения, но зато там всё напичкано служебными программами — веб-серверами, серверами баз данных, сетевыми службами, средствами защиты и балансировки нагрузки, менеджерами памяти и виртуализации. У них нет графического интерфейса, они все запускаются из командной строки.

Поэтому серверами можно спокойно управлять из командной строки, подключившись к терминалу: чтобы запустить на Linux-сервере базу данных, тебе достаточно сказать команду sudo /etc/init.d/mysqld start — и где-то в глубинах сервера зашуршат нужные файлы. Не нужно заходить в меню «Программы», искать там приложение MySQL, запускать его и что-то с ним делать. Одна текстовая команда делает то, что на домашнем компьютере мы бы делали двадцатью кликами мышки.

Когда-то давно мы рассказывали про приложение MAMP — это пакет для разработки сайтов на собственном компьютере. Так вот, MAMP — это лишь простая графическая обёртка для нескольких служебных программ: веб-серверов и баз данных. Когда вы нажимаете кнопку «Запустить сервер», где-то на фоне запускаются служебные программы серверов и баз данных: вы их не видите, но они висят в памяти и делают свою полезную работу. А MAMP просто даёт вам кнопку «Вкл».

Автоматизируем служебные программы через скрипт

Итак, что мы знаем:

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

Логичный следующий шаг — автоматизировать исполнение этих команд и программ с помощью скрипта.

Скрипт — это набор команд для компьютера, которые записали и сохранили в один файл. Можно представить, что это сценарий фильма или пьеса, по которой актёры играют на сцене. Чтобы компьютер понял, что перед ним именно скрипт, используют специальные расширения. В Windows это будут расширения .bat или .ps1.

Например, нам нужно раз в неделю копировать три разные папки в одну с текущей датой. Можно написать такой скрипт и сохранить его как backup.bat :

set sFolderName=%date% (%time:~0,-3%) md "%sFolderName::=-%" md f:\"%sFolderName::=-%"\Documents md f:\"%sFolderName::=-%"\Music md f:\"%sFolderName::=-%"\Images copy C:\Users\Mike\Documents F:\"%sFolderName::=-%"\Documents copy C:\Users\Mike\Work F:\"%sFolderName::=-%"\Work copy C:\Users\Mike\Projects F:\"%sFolderName::=-%"\Projects

Тут используются программы Windows: md — «создание каталога» и copy — «копирование файла». Также используется команда set , которая задаёт переменную для выполнения скрипта. В переменной лежит текущая дата и время.

Теперь достаточно дважды щёлкнуть в проводнике по файлу скрипта или запустить скрипт из командной строки. Компьютер поймёт, что ему нужно исполнить инструкции из скрипта, и всё сделает.

В MacOS и Linux скрипты работают точно так же, только возможностей у скриптов в этих системах намного больше. Дело в том, что Windows изначально была заточена под окна и работу с мышкой, чтобы пользователю не пришлось разбираться со скриптами. А в Linux всё наоборот — там проще всё сделать парой скриптов, чем ставить много программ и долго всё настраивать мышкой.

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

Редакторы для кода

Материал на этой странице устарел, поэтому скрыт из оглавления сайта.

Более новая информация по этой теме находится на странице https://learn.javascript.ru/code-editors.

Для разработки обязательно нужен хороший редактор.

Выбранный вами редактор должен иметь в своём арсенале:

  1. Подсветку синтаксиса.
  2. Автодополнение.
  3. «Фолдинг» (от англ. folding) – возможность скрыть-раскрыть блок кода.

IDE

Термин IDE (Integrated Development Environment) – «интегрированная среда разработки», означает редактор, который расширен большим количеством «наворотов», умеет работать со вспомогательными системами, такими как багтрекер, контроль версий, и много чего ещё.

Как правило, IDE загружает весь проект целиком, поэтому может предоставлять автодополнение по функциям всего проекта, удобную навигацию по его файлам и т.п.

Если вы ещё не задумывались над выбором IDE, присмотритесь к следующим вариантам.

  • Продукты IntelliJ: WebStorm, а также в зависимости от дополнительного языка программирования PHPStorm (PHP), IDEA (Java), RubyMine (Ruby) и другие.
  • Visual Studio, в сочетании с разработкой под .NET (Win)
  • Продукты на основе Eclipse, в частности Aptana и Zend Studio
  • Komodo IDE и его облегчённая версия Komodo Edit.
  • Netbeans

Почти все они, за исключением Visual Studio, кросс-платформенные.

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

Большинство IDE – платные, с возможностью скачать и бесплатно использовать некоторое время. Но их стоимость, по сравнению с зарплатой веб-разработчика, невелика, поэтому ориентироваться можно на удобство.

Лёгкие редакторы

Лёгкие редакторы – не такие мощные, как IDE, но они быстрые и простые, мгновенно стартуют.

Основная сфера применения лёгкого редактора – мгновенно открыть нужный файл, чтобы что-то в нём поправить.

На практике «лёгкие» редакторы могут обладать большим количеством плагинов, так что граница между IDE и «лёгким» редактором размыта, спорить что именно редактор, а что IDE – не имеет смысла.

  • Sublime Text (кросс-платформенный, shareware).
  • Visual Studio Code (кросс-платформенный, бесплатный).
  • Atom (кросс-платформенный, бесплатный).
  • Brackets (кросс-платформенный, бесплатный).
  • SciTe – простой, лёгкий и очень быстрый (Windows, бесплатный).
  • Notepad++ (Windows, бесплатный).
  • Vim, Emacs. Если умеете их готовить.

Мои редакторы

Лично мои любимые редакторы:

  • Как IDE – редакторы от Jetbrains: для чистого JavaScript WebStorm, если ещё какой-то язык, то в зависимости от языка: PHPStorm (PHP), IDEA (Java), RubyMine (Ruby). У них есть и другие редакторы под разные языки, но я ими не пользовался.
  • Как быстрый редактор – Sublime Text.
  • Иногда Visual Studio, если разработка идёт под платформу .NET (Win).

Если не знаете, что выбрать – можно посмотреть на них 😉

Не будем ссориться

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

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

При подготовке материала использовались источники:
https://thecode.media/bin-bash/
https://learn.javascript.ru/editor

Оцените статью