Последнее обновление: 29 July, 2021
В этом посте я расскажу про такое:
Скорее всего, если вы решили читать этот пост, вы уже настроены на то, чтобы начать осваивать управление вашим компьютером с помощью терминала. У меня по этому поводу для вас хорошие новости. Работать с файлами с помощью bash команд — намного приятнее и быстрее, чем работать с ними, кликая на иконки.
Как только команды станут для вас привычными, вы никогда больше не вернетесь к прежнему способу взаимодействия с компьютером.
Итак, команды. И их этимология (там, где это показалось мне необходимым).
ls / #ls означает list. Команда переводится, как "list все, что есть в директории /"
man ls # man означает manual. Показывает справочник по работе с командой
ls -la # показывает все файлы, включая скрытые
pwd # present working directory - отображает текущую папку, в которой вы находитесь.
cd ~ # change directory - вы перейдете в папку по адресу
mkdir # make directory - вы сделаете папку
mkdir 'my cool folder' # если вы хотите в названии папки использовать пробелы, заключите ее в ''
mkdir my\ cool\ folder # '\' или можно еще так
cp <from_what_file_copy_path> <where_to_copy_path> # copy file
cp *.jpg <where_to_copy_path>
cp -r -v 'Bird Pictures' <path> # рекурсивное копирование всех файлов из папки. V означает verbose
mv ./blue_document.txt yellow_document.txt # move - в данном случае ее используют для переименования файла
rm # remove file
rm -r # recursive delete - удаляется папка и все что находится в ней
Когда вы знаете как расшифровывается команда и что она означает на английском, ее намного легче запомнить.
cat <filename>
Эта команда выводит содержимое файла в консоль.
Этимология у нее не такая милая, как я изначально думал. "Cat" — происходит от "concatenate".
"Concatenate" означает "соединять".
Вероятно, она была названа так за то, что то, что выводит эта команда можно соединять с программами, которые требуют текстовые или бинарные данные в качестве ввода.
sudo ... # super user do
Опасная команда, позволяющая творить любой возможный беспредел. Как и любой властью, ей нужно пользоваться с осторожностью и уверенностью в том, что то, что вы собираетесь сделать не навредит вашей машине.
Эта команда доступна только пользователю, имеющему права администратора.
Примеры использования sudo
sudo passwd -e <username> # сбросить пароля пользователя
sudo useradd <username> # добавить нового пользователя
sudo userdel <username> # удалить пользователя
Права, пользователи и bash
chmod # change mode
chmod — главная команда по изменению прав работы над файлами. Сама по себе она много не сделает, НО вы всегда можете вызвать ее справочник и узнать аргументы, которые эта команда требует.
man chmod # вызовет справочник
chmod u+x <filename> # добавит право "запускать" файл пользователю-оунеру файла. u означает user, x - executable
chmod u+rx <filename> # добавит права на чтение и запуск файла пользователю-оунеру файла. u - user, r - readable, x - executable
chmod ugo+r <filename> # добавит право на чтение файла для пользователя-оунера, группы, в которой он состоит, и всем остальным пользователям
# u - user, g - group, o - other, r - readable
Так же файлы можно "передавать" между пользователями системы с помощью команд.
chown # change owner
Команды `chown` и `chmod` часто приходится использовать с `sudo`.
Я проходил их и могу смело их рекомендовать.
Трой Кёлер - программист, живущий в Берлине, Германия. У него более 6 лет опыта работы в IT. Ранее он работал в одном из крупнейших интернет-магазинов Украины, а сейчас работает в Zalando. Он специализируется на языке программирования Rust, сложных бекенд системах, разработке продуктов и инженерных платформах.