Основные команды Linux
Linux Shell — это программа, которая также известна как CLI (англ. Command Line Interface). Она передает команды от пользователя операционной системы и отображает выходные данные, если таковые имеются.
Многие из дистрибутивов имеют графический интерфейс, называемый GUI (англ. graphical user interface), но в серверных и минимальных версиях Linux используется интерфейс командной строки. Попробуем рассмотреть некоторые команды, которые помогут нам освоить командный интерфейс Linux.
При первом входе в терминал мы можем видеть что-то наподобие:
если вы вошли в систему с привилегированным пользователем root;
если вы вошли в систему под пользователем с обычными правами.
Когда вы только открываете терминал, вы находитесь в домашней папке пользователя. Для того, чтобы узнать, в какой папке вы находитесь в данный момент, вы можете воспользоваться командой pwd:
/root
Чтобы сменить каталог воспользуйтесь командой cd:
Также вы можете переходить в каталог выше или в корневую директорию используя команды:
вернет вас в предыдущий каталог;
перейдет в корень файловой системы.
Чтобы увидеть содержимое каталога используйте команду ls:
mybase.sql
Downloads
site.zip
Использование команды ls с параметром -a позволит увидеть скрытые файлы:
.htaccess
mybase.sql
Downloads
site.zip
Скрытые файлы, начинаются со знака "."
Для создания пустого файла используется команда touch:
Если же мы хотим создать файл с некоторым содержимым, воспользуемся командой echo:
Данная строка создаст файл readme.txt, содержащий строку Hello, my name is Linux.
Для просмотра содержимого файла используем команду cat:
Hello, my name is Linux
Для просмотра файлов также можно использовать следующие команды:
more — постраничный просмотр содержимого;
less — то же самое, но с возможностью пролистывания вверх-вниз;
head — покажет первые десять строк файла;
tail — покажет последние десять строк.
Также может понадобится создать каталог, для чего есть команда mkdir:
Для удаления каталога существует команда rmdir. Она удалит каталог, если он пуст:
Для рекурсивного удаления каталогов и файлов в них используйте команду rm:
удалит каталог backups, все файлы и каталоги в нем;
удалит файл readme.txt.
Чтобы скопировать файлы применим команду cp. В формате cp "что копировать"-"куда копировать":
Для того, чтобы переместить файл, используем команду mv:
Также с помощью этой команды можно переименовать файл:
Sudo (англ. substitute user and do) — это утилита, позволяющая запускать команды от имени другого пользователя:
Она запустит Shell от имени суперпользователя root. Sudo используется при необходимости запустить команду с правами суперпользователя:
Данная строка откроет с правами администратора файл sshd_config в текстовом редакторе nano.
Также могут возникать задачи, когда необходимо сменить владельца файла. В этом случае на помощь придет команда chown:
Данная строка рекурсивно сменит владельца и группу каталога /var/www/html/mysite.com на www-data.
Если же необходимо сменить права доступа на файлы и каталоги, можем использовать утилиту chmod:
Она рекурсивно назначит права 755 на все содержимое каталога /var/www/html/mysite.com.
Используя более сложную конструкцию, можно раздельно назначить права на файлы и каталоги:
Для каждой команды можно использовать аргумент --help для получения более подробной информации по ее использованию:
Usage: cp [OPTION]... [-T] SOURCE DEST
or: cp [OPTION]... SOURCE... DIRECTORY
or: cp [OPTION]... -t DIRECTORY SOURCE...
Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.
.....
Также всегда на помощь придет команда man.
С более подробной инструкцией по запрашиваемой команде можно ознакомиться следующим образом:
LS(1) User Commands LS(1)
ls - list directory contents
ls [OPTION]... [FILE]...
List information about the FILEs (the current directory by default).
Sort entries alphabetically if none of -cftuvSUX nor --sort is speci‐
fied.
...