Хочешь уверенно проходить IT-интервью?
![Готовься к IT-собеседованиям уверенно с AI-тренажёром T1!](https://media.proglib.io/banner/2025/01/28/t1.jpg)
Мы понимаем, как сложно подготовиться: стресс, алгоритмы, вопросы, от которых голова идёт кругом. Но с AI тренажёром всё гораздо проще.
💡 Почему Т1 тренажёр — это мастхэв?
- Получишь настоящую обратную связь: где затык, что подтянуть и как стать лучше
- Научишься не только решать задачи, но и объяснять своё решение так, чтобы интервьюер сказал: "Вау!".
- Освоишь все этапы собеседования, от вопросов по алгоритмам до диалога о твоих целях.
Зачем листать миллион туториалов? Просто зайди в Т1 тренажёр, потренируйся и уверенно удиви интервьюеров. Мы не обещаем лёгкой прогулки, но обещаем, что будешь готов!
Реклама. ООО «Смарт Гико», ИНН 7743264341. Erid 2VtzqwP8vqy
1. Загрузка файлов по сети – wget
В *nix-подобных
операционных системах wget
загружает по сети файлы, обслуживаемые с помощью HTTP, HTTPS или FTP. Самый простой способ
использования wget
– указать файл для загрузки по HTTP. Например, чтобы
загрузить с помощью wget
jpg-файл по адресу http://website.com/static/images/header.jpg
, выполните следующую команду:
wget http://website.com/static/images/header.jpg
Приятные особенности wget
связаны с тем, что это неинтерактивная программа, которая может работать в фоновом режиме, а интерфейс терминала позволяет управлять wget
из других программ и скриптов. Так можно автоматизировать загрузку файлов для различных задач.
2. Копирование через SSH – scp
![6 команд терминала и пара комбинаций, полезных для начинающих разработчиков](https://media.proglib.io/posts/2020/01/08/46bffee5579093709253d7ec0674e8af.jpg)
Если необходимо скопировать файл с удалённого сервера на локальный компьютер через SSH, в терминале можно это сделать с помощью scp
(сокращение англ. secure copy). Команда похожа на cp
, но в ней источник и получатель находятся в разных системах (например, под разными IP-адресами).
Следующее предписание скопирует
файл foobar.txt
с сервера в локальный каталог:
scp username@remotehost.com:/path/to/foobar.txt /some/local/directory
Команду scp
можно
использовать и для копирования файла в обратном направлении – из локальной папки
на сервер:
scp /some/local/directory/foobar.txt username@remotehost.com:/destination/path/
То же самое можно делать с каталогами, используя опцию -r
, которая рекурсивно скопирует все
каталоги.
3. Генерация ключей – ssh-keygen
Команда ssh-keygen
используется для создания пары ключей SSH. Сгенерированный публичный ключ можно использовать для установления безопасного соединения с GitLab, Bitbucket или в другом виде SSH-подключения к удалённому серверу.
После добавления SSH-ключ в Gitlab или Bitbucket, вам больше не потребуется каждый раз вводить пароль при отправлении в удалённую ветку.
Чтобы создать пару ключей, используйте следующий метод:
ssh-keygen -t ed25519
В приведённом примере указан алгоритм подписи Ed25519, вы можете использовать другие. Генерация ключей не займёт много времени, но это того стоит!
4. Изменение прав доступа к файлам и каталогам – chmod
![6 команд терминала и пара комбинаций, полезных для начинающих разработчиков](https://media.proglib.io/posts/2020/01/08/96a8143e5ef4d456c1474418ab153732.jpg)
Все хотя бы раз бывали в положении, когда сервер не даёт доступ к файлу из-за неправильной настройки разрешений. К предоставлению прав к файлам и каталогам нужно относиться серьёзно. Бывало, что из-за неверного сочетания ключей злоумышленники получали полный доступ к серверу и требовали выкуп.
В следующем примере выдаётся разрешение на чтение и запись в файл robots.txt
пользователю и группе, а всем остальным только на чтение:
chmod 664 robots.txt
Команда chmod
так называется от английского "change mode". Ниже пользователь и группа получают разрешение на чтение, запись и выполнение для
папки public/images
. Остальные пользователи – только на чтение и выполнение.
chmod 775 public/images
Что «зашифровано» в этих цифрах и как настроить правильные разрешения для файлов и каталогов, вы узнаете из wiki-cтатьи о chmod.
5. Создание и распаковка архивов – tar
Команда tar
(англ. tape archive) широко
используется в *nix для работы с файлами архивов. Начнём с того,
как заархивировать определенный каталог:
tar -cvf my-archive.tar /path/to/directory
Эта операция создаст в текущем рабочем каталоге архив с именем my-archive.tar
, содержащий
все файлы каталога /path/to/directory
.
Создание архивного файла – пол-дела. Распакуем файл в заданный каталог:
tar -xvf my-archive.tar -C /home/myfolder/
6. Cокращённые имена команд и их последовательностей – alias
![6 команд терминала и пара комбинаций, полезных для начинающих разработчиков](https://media.proglib.io/posts/2020/01/08/c580b01e9468897df367262e5d5bb9f4.png)
У каждого в арсенале есть длинные команды, которые сложно запомнить. Облегчить процесс набора позволит создание псевдонима:
alias short-command="длинная команда с множеством ключей и конвейеров"
Но создание псевдонима таким способом
приводит к проблеме: этот «алиас» является временным и доступен лишь в
текущей сессии терминала. Чтобы сохранить
псевдонимы для повторного использования в других сеансах, нужно записать их в
файле профиля конфигурации оболочки. Он находится по
ссылке ~/.bashrc
или ~/.zshrc
(при использовании Bash и ZSH соответственно).
Напоследок пара советов про перенаправление потока и комбинирование команд.
Перенаправление вывода
Стандартным устройством
вывода является экран. Но часто результаты нужно направлять не на экран, а в файл. Например, для создания логов. Чтобы перенаправить
поток, используй оператор >
. В следующей команде вывод ls -al
перенаправляется
в файл myfile
:
ls -al > myfile
Комбинирование команд
Команды будут запускаться подряд, независимо от того, будет ли успешно выполнена предыдущая, если поставить их через точку с запятой. :
ls -al; pwd;
Если нужно, чтобы второе приказание выполнялась только при успешном выполнении первого, объедините их логическим оператором &&
:
mkdir images && cd images
В этом случае директория будет меняться на images
только, если она была успешно создана.
А что, если нужно что-то выполнить, если другую команду осуществить не удалось? Используйте логический оператор ||
.
Резюмируем
Для автоматизированной загрузки файлов через HTTP или FTP используйте wget
, а для копирования по SSH-каналу – scp
(secure copy). Пару SSH-ключей создаст ssh-keygen
. Надоело печатать длинные последовательности строк – обзываем их короткими псевдонимами, по-латыни «иначе» это alias
. Архивируем и распаковываем архивы с помощью tar
. Нужно вывести поток данных не на экран, а в файл – пишите имя файла после оператора >
.
Выполнить операции одну за другой можно, поставив их через точку с запятой ;
. Чтобы команда выполнялась только в случае успешного завершения предыдущей, используем оператор &&
. Когда наоборот, хотим запустить другую команду, если не выполнится первая – ставим между ними оператор ||
.
Комментарии