June 8, 2020

Введение в командую строку

Написание кода хоть и важная часть процесса программирования, но далеко не единственная. Одно дело — программу (сайт) написать, другое — заставить её работать у пользователя или на сервере. Вот лишь неполный перечень вопросов, на которые вам предстоит ответить, попав в разработку:

  • Как зайти на сервер?
  • Как выгрузить код на сервер?
  • Как запустить сайт?
  • Как перемещаться на сервере?
  • Как редактировать файлы на сервере?
  • Как анализировать проблемы в процессе работы сайта?
  • Как анализировать систему в случае "тормозов" (закончилось место, память, нагружен диск, сеть)?

Особенно интересными эти вопросы становятся в свете того, что на подавляющем большинстве серверов установлен не Windows, а Linux без графической оболочки. Подключившись к удалённой машине, вы увидите мигающий курсор, запущенный в терминале (специальная программа, через которую идёт подключение).

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

  • Значительная экономия ресурсов, что особенно важно для серверного окружения
  • Возможность автоматизировать любые действия. Команды можно не только выполнять, но и записать их в файл и выполнять все вместе.
  • Практически неограниченный доступ к возможностям системы
  • Доступно больше возможностей во многих программах

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

  • Для запуска кода на любом языке нужна командная строка
  • Для совместной разработки нужна командная строка
  • Даже для тех, кто работает исключительно с фронтенд-частью приложения, тоже нужна командная строка. Весь современный инструментарий фронтендеров состоит из десятка консольных (то есть запускаемых в командной строке) утилит, таких как Gulp, Webpack, Babel и так далее...