en
Feedback
BashMaster

BashMaster

Open in Telegram

Удобные консольные наработки на каждый день для разработчиков, девопсов и сисадминов. Реклама: @Kone4noVasya Канал на бирже: https://telega.in/c/bash_help

Show more
8 734
Subscribers
+124 hours
+47 days
+13430 days
Posts Archive
Зачем использовать симлинки Символическая ссылка – это специальный файл, который на самом деле не содержит данных, а является указанием реального местоположения другого файла или папки. В обычной жизни такие ссылки вам особо не помогут, но например при деплое веб-приложения на сервер вы можете вынести хранилище загружаемых посетителями файлов из папки приложения в другое место файловой системы. Например, создать такую ссылку можно командой:
ln -s /data/uploads /app/public/uploads
Приложение обращаясь к загрузкам в папке ./public/uploads фактически будет обращаться к /data/uploads.

Для Фронтенда тебе 100% нужны эти каналы! Специалист по JavaScript - образовательный канал по JavaScript. Здесь публикуется г
Для Фронтенда тебе 100% нужны эти каналы! Специалист по JavaScript - образовательный канал по JavaScript. Здесь публикуется готовый код, с использованием методов, конструкций и операторов языка, который можно использовать прямо сейчас. Сеньор Помидор - канал для frontend программистов, с примерами лучших решений на HTML|CSS|JS для твоего проекта и ежедневными заметками, видеоуроками. Figma - Templates - канал с библиотеками готовых макетов, шаблонов, референсов, сервисов. Лучший источник макетов для практики верстки. Каналом пользуются успешные фрилансеры, дизайнеры и frontend программисты.

Бекендер, который не умеет использовать командную строку bash – так себе специалист. Если посетить несколько собеседований уровня от миддл, то можно убедиться, что вопросы про опыт работы в консоли появляются довольно часто. Сходу научиться всем командам bash нереально – их очень много. К счастью, появился канал #!/bin/bash, в котором каждый день можно узнавать по одной небольшой связке команд и сразу же внедрять их в свою работу. Подпишись, освоишь bash на изи 👍

Как разбить команду на несколько строк Если при вводе команды поставить знак \ (обратный слеш), то при переводе строки вы сможете продолжить написание команды. Полезно, например, если вы хотите красиво отформатировать команду с большим количеством аргументов и отправить сниппет коллеге.
cd /app 
  && mkdir var 
  && cp .env.dist .env

Как отфильтровать вывод предыдущей команды и зачем нужен pipe | Bash во многом удобный инструмент именно благодаря своей возможности передавать результаты команд между друг-другом. Как раз для этой цели используется | (pipe, канал, конвеер). Самый простой пример – отфильтровать вывод лога nginx, чтобы показать только запросы к определенному URL. Выводим содержимое файла с cat, фильтруем с помощью grep:
cat access.log | grep api/users
cat access.log | grep 02/Dec
cat access.log | grep api | grep 172.17.0.1

Из-за этого канала твой тимлид впадет в депрессию Потому что ты начнешь решать задачи за час до дедлайна без гугла и форумов Подпишись на Точка PHP и: 🟢прорешай реальные задачи с собеседований IT компаний 🟢изучи PHP библиотеки, которыми пользуются IT-гиганты 🟢получи доступ к современным Backend технологиям в одном канале Перестань трястись на собеседованиях — подпишись и будь уверен в своих знаниях

Как быстро найти команду в истории Наверняка вы знаете, что предыдущие команды консоли можно перебирать стрелками вверх-вниз. Но если вам нужно найти давнишнюю команду только по каким-то обрывкам слов, нажмите Ctrl + R и введите в консоль часть слова, чтобы вывести последнюю команду с искомым вхождением этой строки. Каждое последующее нажатие ищет следующую команду в истории.

Парсниг JSON в консоли Если вам требуется просто спарсить единственное поле объекта JSON, полученного например из API-эндпоинта, тогда вы можете обойтись sed. Если же нужно, предположим, выбрать определенный ключ массива вложенного в глубину объекта, используйте утилиту jq (документация). Как минимум, jq выведет ваш JSON отформатированно и в цвете.

Зачем нужна комбинация && С помощью && можно объединить выполнение нескольких команд. Но выполнение прервется, если какая-то команда завершится неудачно. Например, вам требуется скачать файл-установщик и выполнить его. Выполнение не будет иметь смысла, если скачивание прервется.
curl -sS https://url-to-installer.com/installer.sh -o /tmp/installer.sh && /tmp/installer.sh
git commit -m "Fix" && git push

Как выполнить команду под другим пользователем Команда sudo позволяет выполнять команды от имени другого пользователя системы. Добавьте флаг -u и укажите юзернейм необходимого пользователя, или опустите его, чтобы выполнить команду под root. Это может быть полезно, например, если вам требуется подключиться к локальной БД или выполнить команду приложения из под веб-сервера.
sudo -u postgres psql
sudo -u www-data php artisan:warm-cache
sudo mv secret.txt /root/secret.txt

Как следить за логами веб-сервера в консоли Команда tail -f выводит в реальном времени новые строки, которые появляются в файле. Таким способом удобно следить, например, за логами веб-сервера.
tail -f /var/log/nginx/access.log
tail -f ./app/logs/2022-11-*.dat

Как вывести содержимое нескольких файлов одной командой Команду cat для вывода содержимого файлов можно использовать вместе с маской. Тогда команда выведет содержимое всех файлов, которые подходят под эту маску. cat *.dat cat logs/nginx*2022-11*.log

Что такое тильда ~ Знак ~ означает домашний каталог текущего пользователя. Это удобный способ быстро перейти в домашнюю директорию или в каталог внутри нее.
cd ~/Downloads
cat ~/.ssh/id_rsa.pub

Как узнать информацию о загруженности системы Команда top покажет запущенные процессы. Но лучше установить улучшенную альтернативу htop с расширенной статистикой, например, загруженности каждого ядра.

Как узнать текущую директорию Команда pwd выводит текущую директорию, в которой вы находитесь. Также можете использовать значение переменной $PWD.

Как изменить время доступа у файлу Используйте команду touch с флагами -a (время последнего доступа) или -m (время последней модификации).
touch -a -t 201212120000 file.dat
touch -m -t 202211291300 data.log

Как вывести значение переменной Переменные в команду подставляются через знак $. Самый простой способ узнать значение переменной – вывести ее, например:
echo $VAR
echo $UID
echo $SHELL

Как узнать занятое количество ОЗУ в системе Команда free покажет общее и использованное количество оперативной памяти на сервере. Если хотите увидеть человеопонятные числа, добавьте параметр -h.

Как создать файл Для создания пустого файла используйте команду touch.
touch file.txt
touch directory/data.dat

Как перейти в предыдущий каталог Если подставить дефис в команду смены директории, то вы вернетесь в предыдущий каталог: cd -