Содержание

34 Команды Linux, Которые Должен Знать Каждый Пользователь

VPS

Янв 14, 2022

Olha L.

7хв. читання

Большинство людей думают, что Linux — это сложная операционная система, которая используется только программистами. Но на самом деле это не так. К тому же базовые команды Linux довольно понятны и просты. 

Linux — это целое семейство операционных систем Unix с открытым исходным кодом, основанных на ядре Linux. Сюда входят все самые популярные системы на основе Linux, такие как Ubuntu, Fedora, Mint, Debian и другие. Если быть точным, их называют дистрибутивами.

С тех пор как Linux был впервые выпущен в 1991 году, он продолжал набирать популярность благодаря открытому исходному коду. Люди могут свободно модифицировать и распространять его под своим именем.

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

При этом рекомендуется использовать интерфейс командной строки (CLI), так как он более мощный и эффективный. Задачи, для решения которых в графическом интерфейсе понадобиться много этапов, можно выполнить за считанные секунды, вводя команды в CLI.

Так что, если вы планируете использовать Linux, знание базовых командных строк является необходимостью. В этой статье вы узнаете 34 основные команды Linux, которые, несомненно, помогут вам сориентироваться как новичку.

Получите скидку до 77% на Linux VPS-хостинг.

Начать

Оглавление

Основные Команды Linux

Прежде чем перейти к списку команд, необходимо открыть командную строку. Если вы плохо ориентируетесь в интерфейсе командной строки, ознакомьтесь с этим руководством по CLI (англ).

Хотя шаги могут несколько различаться в зависимости от используемого вами дистрибутива, обычно командную строку вы можете найти в разделе «Утилиты».

Итак, 34 базовые команды Linux. Поехали!

1.

Команда pwd

Используйте команду pwd, чтобы узнать путь к текущему рабочему каталогу (папке), в котором вы находитесь от корневого каталога. Команда вернёт абсолютный (полный) путь, который по сути является путём всех каталогов, начинающийся с косой черты (/). Примером абсолютного пути является /home/username.

2. Команда cd

Для навигации по файлам и каталогам Linux используйте команду cd. Она требует либо полный путь, либо имя каталога, в зависимости от текущего рабочего каталога, в котором вы находитесь.

Допустим, вы находитесь в /home/username/Documents и хотите перейти в Photos, подкаталог Documents. Для этого просто введите следующую команду: cd Photos.

Другой сценарий, если вы хотите перейти в совершенно новый каталог, например, /home/username/Movies. В этом случае вам нужно ввести cd, а затем абсолютный путь к каталогу: cd/home/username/Movies.

Также есть несколько шорткодов для более быстрой навигации:

  • cd . . (с двумя точками), чтобы переместиться на один каталог вверх
  • cd, чтобы перейти прямо в домашнюю папку
  • cd- (с дефисом), чтобы перейти к предыдущему каталогу

Также стоит отметить, что оболочка Linux чувствительна к регистру. Важно точно вводить имена каталогов.

3. Команда ls

Команда ls используется для просмотра содержимого каталога. По умолчанию эта команда отобразит содержимое вашего текущего рабочего каталога.

Если вы хотите просмотреть содержимое других каталогов, введите ls, а затем путь к каталогу. Например, введите ls /home/username/Documents для просмотра содержимого в Documents.

Варианты использования команды Linux

ls:

  • ls -R также выведет список всех файлов в подкаталогах
  • ls -a покажет скрытые файлы
  • ls -al выведет список файлов и каталогов с подробной информацией, такой как разрешения, размер, владелец и т. д.

4.

Команда cat

cat (сокращение от concatenate) — одна из наиболее часто используемых команд в Linux. Используется для вывода содержимого файла в командной строке (sdout). Чтобы запустить эту команду, введите cat, а затем имя файла и его расширение. Например: cat file.txt.

Вот другие варианты использования команды Linux cat:

  • cat> filename создаёт новый файл
  • cat filename1 filename2>filename3 объединяет два файла (1 и 2) и сохранит их содержимое в новом файле (3)
  • Чтобы преобразовать файл в верхний или нижний регистр, cat filename | tr a-z A-Z >output.txt

5. Команда cp

Используйте команду cp для копирования файлов из текущего каталога в другой каталог. Например, команда cp scenery.jpg/home/username/Pictures создаст копию scenery.jpg (из вашего текущего каталога) в каталог Pictures.

6. Команда mv

Основное предназначение команды mv — перемещение файлов, хотя её также можно использовать для их переименования.

Аргументы в mv похожи на аргументы команды cp. Вам нужно ввести mv, имя файла и каталог назначения. Например: mv file.txt/home/username/Documents.

Команда Linux для переименования файлов будет выглядеть так: mv starojeimia.ext novojeimia.ext.

7. Команда mkdir

Используйте команду mkdir, чтобы создать новый каталог. Если вы введёте mkdir Music, команда создаст каталог с именем Music.

Дополнительные команды mkdir:

  • Чтобы создать новый каталог внутри другого каталога, используйте эту базовую команду Linux mkdir Music/Newfile;
  • Используйте опцию p (parents), чтобы создать каталог между двумя существующими каталогами. Например, mkdir -p Music/2020/Newfile создаст новый файл «2020».

8. Команда rmdir

Если вам нужно удалить каталог, используйте команду rmdir. Однако rmdir позволяет удалять только пустые директории.

9. Команда rm

Команда rm используется для удаления файлов. Если вы хотите удалить каталог со всем его содержимым, в качестве альтернативы rmdir используйте rm с опцией -r.

Примечание: будьте очень осторожны с этой командой и всегда проверяйте, в каком каталоге вы находитесь. Она удаляет всё и её невозможно отменить.

10. Команда touch

Команда touch позволяет создать новый пустой файл через командную строку Linux. В качестве примера введите touch /home/username/Documents/Web.html, чтобы создать файл HTML с названием Web в каталоге Documents.

11. Команда locate

Используйте эту команду, чтобы найти нужный вам файл. Она работает, как команда поиска в Windows. Более того, аргумента -i сделает команду нечувствительной к регистру, благодаря чему вы сможете искать файлы, даже если вы не помните их точные названия.

Чтобы найти файл, содержащий два или более слов, используйте звёздочку (*). Например, команда locate -i school*note будет искать любой файл, содержащий слова «school» и «note», не зависимо от того написаны они с большой или маленькой буквы.

12. Команда find

Подобно команде locate, find также выполняет поиск файлов и каталогов. Разница в том, что команда find используется для поиска файлов в текущем каталоге.

Например, команда find/home/-name notes.txt будет искать файл с именем notes.txt в домашнем каталоге и его подкаталогах.

Другие варианты использования команды Linux find:

  • Для поиска файлов в текущем каталоге используйте find . -name notes.txt
  • Для поиска каталогов используйте / -type d -name notes. txt

13. Команда grep

Ещё одна базовая команда Linux, которая, несомненно, пригодится для повседневного использования — grep. С её помощью совершается поиск по всему тексту в текущем файле.

Например, grep ubuntu notepad.txt будет искать слово ubuntu в файле notepad. Строки, содержащие искомое слово, будут отображаться полностью.

14. Команда sudo

Сокращенно от «SuperUser Do», эта команда позволяет выполнять задачи, требующие прав администратора или root. Однако не рекомендуется использовать эту команду для повседневных задач, так как неправильное её использование может легко стать причиной появления ошибок.

15. Команда df

Используйте команду df, чтобы получить отчёт об использовании дискового пространства в системе в процентах и килобайтах. Если вы хотите просмотреть отчёт в мегабайтах, введите df -m.

16. Команда du

Если вы хотите проверить, сколько места занимает файл или каталог, воспользуйтесь командой du (Disk Usage). Однако вместо размера в обычном формате, в сводке вы увидите количество блоков диск. Если вы хотите посмотреть информацию в байтах, килобайтах и мегабайтах, добавьте аргумент -h в командную строку.

17. Команда head

Команда head используется для просмотра первых строк любого текстового файла. По умолчанию она покажет первые десять строк, но вы можете изменить это число. Например, если вы хотите показывать только первые пять строк, введите head -n 5 filename. ext.

18. Команда tail

Эта команда имеет функцию, аналогичную команде head, но вместо отображения первых строк tail выводит последние десять строк текстового файла. Например, tail -n filename.ext.

19. Команда diff

Являясь сокращением от английского слова difference (разница), команда diff сравнивает содержимое двух файлов построчно. После анализа файлов будут выведены строки, которые не совпадают. Программисты часто используют эту команду, когда им нужно внести изменения в программу, не переписывая весь исходный код.

Простейшая форма этой команды — diff file1.ext file2.ext.

20. Команда tar

Команда tar является наиболее часто используемой командой для архивирования нескольких файлов в tarball — общий формат файлов Linux, аналогичный формату zip, при этом сжатие является опциональным.

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

21. Команда chmod

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

22. Команда chown

В Linux все файлы принадлежат конкретному пользователю. Команда chown позволяет изменить или перенести владельца файла на указанное имя пользователя. Например, chown linuxuser2 file.ext сделает linuxuser2 владельцем file.ext.

23. Команда jobs

Команда jobs отображает все текущие задачи вместе с их статусами. Задача — это процесс, запущенный в фоновом режиме.

24. Команда kill

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

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

  • SIGTERM (15) — просит программу прекратить работу и даёт ей некоторое время, чтобы сохранить весь прогресс. Если вы не указали сигнал при вводе команды kill, этот сигнал будет использоваться по умолчанию.
  • SIGKILL (9) — принудительно останавливает программы. Несохранённый прогресс будет потерян.

Помимо знания сигналов, вам также необходимо знать числовой идентификатор процесса (PID) программы, которую вы хотите

уничтожить. Если вы не знаете PID, просто запустите команду ps ux.

Узнав, какой сигнал вы хотите использовать и PID программы, введите следующий синтаксис:

kill [опция сигнала] PID.

25. Команда ping

Используйте команду ping для проверки состояния подключения к серверу. Например, просто введя ping google.com, команда проверит, можете ли вы подключиться к Google, а также измерить время ответа.

26. Команда wget

Командная строка Linux очень полезна — вы даже можете загружать файлы из интернета. Сделать это можно с помощью команды wget. Для этого просто введите wget и ссылку для скачивания.

27. Команда uname

Команда uname, сокращение от Unix Name, выведет подробную информацию о вашей системе Linux, такую как имя машины, операционная система, ядро и т. д.

28. Команда top

Являясь эквивалентом диспетчера задач в Windows, команда top выводит список запущенных процессов, а также информацию о том, сколько ЦП использует каждый процесс. Отслеживать использование системных ресурсов очень полезно. Таким образом, вы сможете определить какой процесс необходимо прекратить, поскольку он потребляет слишком много ресурсов.

29. Команда history

Регулярно пользуясь Linux, вы заметите, что запускаете сотни команд каждый день. Команда history позволяет просмотреть команды, которые вы вводили ранее.

30.

Команда man

Неуверены в функциях некоторых команд Linux? Не беспокойтесь, вы можете легко научиться использовать их прямо из оболочки Linux с помощью команды man. Например, man tail покажет инструкцию к команде tail.

31. Команда echo

Эта команда выводит текст в stdout (стандартный вывод). Оператор >> дописывает stdout в файл. Также есть оператор >, который создаст файл, если он не существует и выведет туда текст или перезапишет существующий файл. Например, если вы хотите добавить текст «Здравствуйте, меня зовут Джон» в файл с именем name.txt, введите echo Здравствуйте, меня зовут Джон >> name.txt.

32. Команда zip, unzip

Используйте команду zip для сжатия ваших файлов в zip-архив, а команду unzip для извлечения zip-файлов из zip-архива.

33. Команда hostname

Если вы хотите узнать имя вашего хоста/сети, просто введите hostname. Добавление -I в конце выведет IP-адрес вашей сети.

34. Команда useradd, userdel

Поскольку Linux является многопользовательской системой, это означает, что более чем один человек может взаимодействовать с одной и той же системой одновременно. useradd используется для создания нового пользователя, в то время как passwd добавляет пароль к учётной записи этого пользователя. Чтобы добавить нового пользователя с именем Джон, введите useradd John. А затем, чтобы добавить пароль, напишите passwd 123456789.

Процесс удаления пользователя напоминает его добавление. Чтобы удалить учётную запись, введите команду userdel ImiaPolzovatelia.

Бонусные Советы и Приёмы

Используйте команду clear для очистки терминала, если он перегружен предыдущими командами.

Попробуйте кнопку TAB для автозаполнения того, что вы печатаете. Например, если вам нужно набрать Documents, начните вводить команду (например, cd Docu, затем нажмите клавишу Tab), и терминал заполнит всё остальное, показывая вам полную фразу cd Documents.

Комбинации клавиш Ctrl+C и Ctrl+Z используются для остановки любой команды, которая работает в данный момент. Ctrl+C останавливает программу, а Ctrl+Z — ставит её на паузу.

Если вы случайно заморозили терминал, нажав Ctrl+S, просто отмените это с помощью комбинации Ctrl+Q.

Ctrl+A перемещает вас в начало строки, а Ctrl+E — в конец.

Вы можете запустить несколько команд в одной команде, используя «;», чтобы отделить их. Например Command1; Command2; Command3. Или &&, если вы хотите, чтобы следующая команда запускалась только тогда, когда предыдущая будет успешной.

Подводим Итоги

Основные команды Linux помогают пользователям легко и эффективно выполнять повседневные задачи. Чтобы запомнить базовые команды Linux, может потребоваться некоторое время, но нет ничего невозможного, особенно если вы постоянно практикуетесь.

В любом случае знание основных команд Linux, несомненно, принесёт вам пользу.

Удачи!

Ольга вже близько восьми років працює менеджером у сфері IT, три з яких вона займається SEO. Написання технічних завдань та інструкцій — один з її основних обов’язків. Її хобі — дізнаватися щось нове і створювати цікаві та корисні статті про сучасні технології, веброзробку, мови програмування, пошукову оптимізацію сайтів та багато іншого.

Більше статей від Olha L.

10 команд Linux для начинающих пользователей

480 auto

 

В предыдущей статье мы привели базовые горячие клавиши, которые помогают быстрее адаптироваться на первых этапах знакомства с терминалом. Мы продолжим тему первых шагов знакомства с терминалом Linux и познакомим вас с 10 его командами, знание которых сильно облегчит работу в среде Linux.

Начнём с команды, без которой невозможно перемещаться по каталогам Linux, а значит и полноценно работать, — cd.

1

Cd – переход между директориями

Cd — это одна из самых часто используемых команд, так как невозможно работать не перемещение по директориям. Синтаксис команды очень прост: cd

Чтобы перейти в нужный каталог — необходимо ввести его полный путь, а если вы хотите перейти в подкаталог из каталога — достаточно ввести его название. Например, мы хотим перейти в каталог /etc/, тогда команда будет выглядеть так:

cd /etc/

Команда имеет множество удобных шорткодов для более быстрой навигации:

  • cd – перемещение в домашний каталог пользователя, аналог cd home или cd ~
  • cd .. – перемещение на один каталог вверх
  • cd — – возвращение в предыдущей каталог
  • cd / – перемещение в корневую директорию

Если вы запутались или вам сложно сориентироваться, в какой директории вы сейчас находитесь – воспользуйтесь командой pwd. Она выведет полный путь директории.

2

Pwd – отображение полного пути до текущей рабочей директории

Команда pwd возвращает абсолютный (полный) путь, который является путём всех каталогов, начинающийся с косой черты (/).

Синтаксис команды:

pwd

Пример вывода полного пути:

pseudolukian@DELL-2J1ZPT2:/etc/apt/sources.list.d$ pwd
/etc/apt/sources.list.d

Команда pwd не имеет никаких ключей. Если мы хотим просмотреть содержимое директории, в которой находимся нам нужно воспользоваться командой ls.

3

Ls — отображение содержимого директории

Команда ls выводит содержимое каталога, в котором сейчас находится пользователь. Синтаксис команды:

ls

Вы можете просмотреть содержимое любого каталога, к которому знаете путь. Например, команда ls /etc/ выведет на экран содержимое каталога etc:

ls /etc/

Команда ls по сравнению с pwd имеет множество полезных ключей, которые меняют форму вывода команды.

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

Например, при указании ключа -R, ls будет выводить содержимое вложенных директорий:

pseudolukian@DELL-2J1ZPT2:/etc/apt$ ls -R
.:
apt.conf.d auth.conf.d preferences.d sources.list sources.list.d trusted.gpg.d

./apt.conf.d:
01-vendor-ubuntu 10periodic 20auto-upgrades 50command-not-found 99update-notifier
01autoremove 15update-stamp 20packagekit 50unattended-upgrades
01autoremove-kernels 20archive 20snapd.conf 70debconf
./auth.conf.d:
./preferences.d:
./sources.list.d:
./trusted.gpg.d:
ubuntu-keyring-2012-archive.gpg ubuntu-keyring-2012-cdimage.gpg ubuntu-keyring-2018-archive.gpg

По умолчанию ls не отображает скрытые файлы, чтобы ls начал отображать скрытые файлы, его надо запустить с ключом -a. Пример вывода содержимого директории /etc/apt:

pseudolukian@DELL-2J1ZPT2:/etc/apt$ ls -a
. .. apt.conf.d auth.conf.d preferences.d sources.list sources.list.d trusted.gpg.d

Обратите внимание, в начале списка, выведены объекты директории:

  • Точка – это псевдоним пути к текущей директории
  • Две точки – это псевдоним родительской директории (директория на уровень выше)

Следующий ключ -l. Используя этот ключ, ls выведет список файлов и каталогов с подробной информацией о пользователях, правах доступа, размерах, владельцах и т. д. Пример вывода с ключом -l:

pseudolukian@DELL-2J1ZPT2:/etc/apt$ ls -l
total 4
drwxr-xr-x 1 root root 4096 Feb 20 02:49 .
drwxr-xr-x 1 root root 4096 Aug 17 15:40 ..
drwxr-xr-x 1 root root 4096 Feb 20 02:51 apt.conf.d
drwxr-xr-x 1 root root 4096 Apr 9 2020 auth.conf.d
drwxr-xr-x 1 root root 4096 Apr 9 2020 preferences.d
-rw-r--r-- 1 root root 2743 Feb 20 02:51 sources.list
drwxr-xr-x 1 root root 4096 Apr 9 2020 sources. list.d
drwxr-xr-x 1 root root 4096 Feb 20 02:49 trusted.gpg.d

Ключи могут быть использованы одновременно. Например, чтобы вывести всё содержимое директории, вместе со скрытыми объектами, команду можно указать так: ls -la.

Итак, мы посмотрели на команды, которые помогают перемещаться по каталогам Linux, теперь можно перейти к командам, предназначенным для просмотра содержимого файлов и манипуляций с ними: копирование, удаление, перемещение.

4

Cat, head, sed, tail – вывод содержимого файла

Рассмотрим сразу набор команд, которые используются для вывода содержимого файла в командной строке. Начнем с команды cat, которая используется для просмотра текстовых файлов или скриптов. Синтаксис команды:

cat

Чтобы просмотреть содержимое файла – укажите его полное имя после команды cat:

pseudolukian@DELL-2J1ZPT2:~$ cat test.txt
Привет!
Мы открыли тестовый файл с помощью команды cat. Всё работает нормально :)

Команда cat обладает множеством полезных ключей и функций. Например, ключ -n выводит содержимое файла с нумерацией строк:

pseudolukian@DELL-2J1ZPT2:~$ cat -n test.txt
1 Привет!
2 Мы открыли тестовый файл с помощью команды cat. Всё работает нормально :)
3 Для более наглядного примера, напишем ещё несколько строк. А лучше вставим список.
4 Linux - замечательная ОС, она позволяет:
5 - легко запускать веб-сервера;
6 - гибко настраивать права доступа;
7 - управлять инфраструктурой;
8 - и многое другое.

Часто бывает нужно вывести первые несколько строк файла. Для этого используется команда head с указанием количества, выводимых строк и названием файла:

pseudolukian@DELL-2J1ZPT2:~$ head -2 test.txt
Привет!
Мы открыли тестовый файл с помощью команды cat. Всё работает нормально :)

Чтобы вывести последние строки файла — используют команду tail с указанием количества строк и названия файла:

pseudolukian@DELL-2J1ZPT2:~$ tail -4 test. txt
- легко запускать веб-сервера;
- гибко настраивать права доступа;
- управлять инфраструктурой;
- и многое другое.

Для вывода произвольного количества строк из файла применяется команда sed с указанием диапазона строк в формате: ‘начало, конец !d’.

pseudolukian@DELL-2J1ZPT2:~$ sed '2,3!d' test.txt
Мы открыли тестовый файл с помощью команды cat. Всё работает нормально :)
Для более наглядного примера напишем ещё несколько строк. А лучше вставим список.

Команды cat, head, sed и tail позволяют выводить информацию в терминал по определенным условиям. Однако часто нужно найти конкретную информацию в файле или файл целиком. Для этого существует команда — grep.

5

Grep — поиск файлов в директориях и строк в файлах

Строго говоря, grep — это утилита командной строки, которая входит во все широко используемые дистрибутивы Linux, а слово грепнуть стало нарицательным для поиска чего-либо.

Чаще всего grep используется в сочетании с другими командами, передавая на вход данные через оператор потока PIPE — |. Например, следующая цепочка команд (конвейер) найдёт среди множества файлов все файлы, в названии которых есть слово vdc с расширением .png и выведет на экран первые 3 файла:

ls -l | grep .png | head -3

Искать можно как файлы и директории, так и строки внутри файлов. Например, найдёт строку в тестовом текстовом файле test_test_.txt, содержащую слово «Мы»:

cat test_test.txt | grep Мы

Если нужно найти словосочетание с пробелами, то оно берется в кавычки:

cat test_test.txt | grep "Мы открыли"

Несмотря на то, что grep обычно используется, как фильтр, команду можно использовать и самостоятельно. Для этого достаточно указать искомое значение и место для поиска: файл или директория.

Грепнем строку «Мы открыли» в файле test_test. txt:

grep "Мы открыли" test_test.txt

Для поиска файлов в директории и вложенных директориях применяется ключ -r. Например, найдем всех файлы с расширением .txt в домашней директории пользователя и всех вложенных директориях:

root@DELL-2J1ZPT2:/home/pseudolukian# grep -r .txt

Конечно, в рамках данной обзорной статьи продемонстрировать все возможности команды grep — невозможно. Мы ограничились только базовым функционалом, а также рассмотрели команды, с помощью которых можно перемещаться по директориям и просматривать содержимое файлов.

Теперь посмотрим на команды, которые позволяют проводить манипуляции с файлами и директориями.

6

Touch, cp, mv, rm — создание, копирование, удаление и перемещение файлов

Создать файл в Linux можно несколькими путями: 1) Запустить нужную терминальную утилиту и после сохранить готовый файл; 2) Создать пустой файл командой touch и после его открыть в нужной утилите.

Для создания пустого файла применяется команда touch, которой нужно в качестве аргумента передать название и расширение файла:

touch test.txt

Чтобы создать копию файла — применяется команда cp, с указанием нового имени файла. Например:

cp test.txt copied_test.txt

Если файл нужно скопировать в другую директорию — ее нужно указать в конце команды:

cp test.txt /home/

Команда cp имеет множество полезных ключей, которые могут пригодиться. Вот некоторые из них:

  • -f — перезаписать существующий файл при копировании
  • -i — спросить нужно ли перезаписывать существующий файл
  • -r — рекурсивное копирование директории (подробнее в разделе о работе с директориями)

Ключей, конечно же, намного больше, но для базовых задач по копированию — их более чем достаточно.

Для перемещения файлов между директориями применяется команда mv:

mv test. txt /home/

Часто команду mv используют для переименования файлов. В этом случае синтаксис команды будет таким:

mv test.txt new_nest.txt

Чтобы удалить файл — применяется команда rm:

rm test.txt

Далее рассмотрим команды для работы с директориями.

7

Mkdir, cp, rm — создание, копирование, удаление и перемещение директорий

Для создания директорий используют команду mkdir, с указанием названия новой директории. Например, мы создадим директорию folder в /home:

mkdir folder

Для более наглядной демонстрации последующих команд копирования и удаления, создадим в директории folder несколько пустых файлов командой touch, применив небольшой лайфхак — мы автоматизируем процесс создания файлов с помощью такой конструкции:

touch some_file_{1..10}.txt

Теперь скопируем директорию folder командой cp. Если директория содержит файлы, тогда необходимо указать ключ -r (рекурсивное копирование):

cp -r folder/ copied_folder

Для удаления директории, содержащий файлы применяют команду rm с ключом -r:

rm -r folder

Переместить директорию со всем содержимым можно командой mv. Сначала указывается переносимый каталог, а затем каталог для переноса:

mv folder /home

Работа с файлами и директориями не ограничивается их созданием, удалением и перемещением. Часто необходимо изменить права доступа к файлам и назначить им владельца.

8

Chmod — установка прав на файл

Для работы с правами доступа используется команда chmod. Синтаксис команды:

chmod права файл или папка

Просмотреть права можно командой ls с ключом -l:

root@DELL-2J1ZPT2:/home# ls -l
total 0
drwxr-xr-x 1 root root 4096 Aug 24 12:41 folder
drwxr-xr-x 1 pseudolukian pseudolukian 4096 Aug 24 14:21 pseudolukian
-r--r----- 1 root root 0 Aug 25 13:34 test. txt

Указать изменения в правах на файл через chmod можно двумя разными форматами записей:

Первый формат записи — символьный. В нем используются следующие символы:

  • u — пользователь-владелец
  • g — группа-владелец
  • o — другие пользователи
  • a — все пользователи
  • r — права на чтение
  • w — права на запись
  • x — права на выполнение
  • «+» — добавить права
  • «» — отменить права
  • «=» — заменить набор прав.

Пример добавления прав в символьном формате записи:

chmod u+rwx,g+rwx,a+rwx test.txt

Пример отмены прав в символьном формате записи:

chmod u-rwx,g-rwx,a-rwx test.txt

Если нужно изменить сразу набор прав, то используется следующая запись:

chmod u=rwx,g=rwx,a=rwx test. txt

Если нужно некоторые права добавить, а некоторые отменить, то вместо права указывается прочерк — «-»:

chmod u=r-x,g=rw-,a=--- test.txt

Второй формат записи — числовой. Здесь права представляются не в виде букв, а в виде восьмеричной записи групп значений:

  • r — 4
  • w — 2
  • x — 1.

Так запись формата rwxrwxrwx можно представить, как сумму значений прав, разбитых по группам: (4+2+1), (4+2+1), (4+2+1) = 777. Чаще всего для изменения прав используют именно такой формат записи.

Пример добавления прав в цифровом формате записи:

chmod 777 test.txt

Этой записью мы установили максимальные права доступа для всех. Например, если нужно запретить исполнение файла — устанавливается значение 6 (r — 4 + w — 2) в нужную группу прав. Запретим исполнение для всех:

chmod 666 test. txt

Если нужно отменить права сразу на группу прав — устанавливается 0. Например, отменим все права на файл для владельца-пользователя:

chmod 066 test.txt

Мы рассмотрели работу с правами доступа к файлам и папкам. Часто бывает необходимо еще изменить владельца и группу владельцев файла или папки. Делается это с помощью команд chown и chgrp.

9

Chown, chgrp — смена владельца файла и группы

В Linux каждый файл и директория имеют своего владельца и группу владельца. Назначаются владельцы при создании объектов. Такая система сделана для того, чтобы разделить права доступа между пользователями.

Напомним, что узнать владельца можно командой ls -l. А сменить владельца и группу владельца можно командой chown. Синтаксис команды:

chown новый пользователь:новая группа файл или папка

Например, изменим пользователя и группу пользователя для файла test. txt на root-пользователя:

chown root:root test.txt

Для изменения пользователя у директории и всех вложенных объектов применяется команда chown с ключом -R:

chown root:root ./folder

Существует команда, которая изменяет только группу владельца — chgrp. Синтаксис команды:

chgrp название группы владельца файл или директория

Как изменить владельца или группу владельца мы рассмотрели, теперь ознакомимся с командами для создания пользователя и групп в Linux.

10

Useradd, groupadd — создание пользователя, группы и добавление пользователя в группу

Создать пользователя или изменить права уже существующим пользователям в Linux можно с помощью команды useradd. Команда позволяется также создать домашний каталог и скопировать в него системные файлы. Синтаксис команды:

useradd опции имя_пользователя

Команда useradd имеет множество опций. Мы приведем только некоторые из них:

  • -D — отобразить параметры, которые будут применены по умолчанию при создании нового пользователя
  • -p — задать пароль пользователя
  • -s — задать командную оболочку для пользователя
  • -g — основная группа пользователя
  • -G — дополнительная группа пользователя

Ознакомимся сначала с дефолтными условиями создания нового пользователя:

useradd -D

Команда вернет информацию следующего вида:

GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/sh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=no

Если стандартные условия вас устраивают, то создать нового пользователя можно, указав только два параметра: имя пользователя и пароль.

useradd -p porol new_user

По умолчанию у дефолтной группы довольно ограниченные права, чтобы новые пользователи могли получить доступ к системным ресурсам, можно указать ключ -G с системными ресурсами. Например:

useradd -G adm,cdrom -p parol new_user

Если стандартные группы пользователей вам не подходят и нужно создать новою группу, то делается это командой groupadd.

Создадим группу new_users:

groupadd new_users

Теперь с помощью команд cat и grep проверим, что группа была создана:

root@DELL-2J1ZPT2:/home/folder# cat /etc/group | grep new_users
new_users:x:1002:

А если требуется получить список всех групп, то просто воспользуйтесь командой cat без grep:

cat /etc/group

Команда вернёт список названий групп. Здесь стоит поэкспериментировать с объединением команд для работы с выводом на экран через оператор |. Это позволит вам лучше понять принцип работы каждой из команд.

Если статья показалась вам интересной, возможно, вас заинтересует наша другая статья — «10 горячих клавиш Linux для начинающих пользователей».

Опробовать на боевую новые знания можно прямо сейчас. Достаточно создать виртуальный сервер под управлением Linux и воспользоваться бесплатным тестовым периодом.

Команды BASIC

Этот документ воспроизведен с любезного разрешения Томаса Курца

Dartmouth BASIC произвел революцию в компьютерном программировании для неспециалистов, которых значительно больше, чем экспертов! Это был простой язык, в котором использовались английские слова, и он давал почти мгновенный ответ в те дни, когда нормой было выполнение часов или даже дней.

Эта заметка дает краткое описание языка для тех из вас, кто знаком с программированием.

Томас Э. Курц
2005 26 октября

Операторы

В оригинальном BASIC было пятнадцать типов операторов.

LET Вводит оператор присваивания, требуется
PRINT Обеспечивает вывод в произвольной форме
END Требуется

READ Присваивает значения переменным из внутренних данных
DATA Вводит внутренние данные оператор
IF Выдает условный GOTO

FOR Вводит циклическую конструкцию
NEXT Завершает циклическую конструкцию

GOSUB Выполняет переход к подпрограмме
RETURN Возврат из конца подпрограммы

DEF Вводит определяемые программистом функции

Кроме того, несколько более поздняя версия BASIC, которую мы используем, включает оператор INPUT. ». 9x
INT Целая часть (усеченная в сторону 0)
LOG Натуральный логарифм
RND Следующее случайное число
SIN Синус
SQR Квадратный корень
TAN Тангенс Предполагается, что ATN в радианах.

Сообщения об ошибках выдаются для аргументов, выходящих за допустимые пределы для функций LOG и SQR, хотя SQR затем предоставляет SQR абсолютного значения.

Функция RND нуждалась в фиктивном аргументе, чтобы пройти сканер синтаксиса. То есть РНД(0). Аргумент игнорируется.

Переменные

Имена переменных могут состоять из одной буквы или из одной буквы, за которой следует одна цифра. Это обеспечивает 286 возможных имен переменных.

Массивы

Одна буква, за которой следует «(», обозначает элемент массива, который может быть одномерным или двумерным. Без оператора DIM размеры по умолчанию составляют от 0 до 10 для каждого измерения.

Оператор DIM позволяет другие верхние пределы, но всегда указывается нулевой элемент

Операторы PRINT

Оператор PRINT допускает использование нескольких величин, включая строки в кавычках, разделенные запятыми (,) или точками с запятой (;). Если через запятую, BASIC переходит к началу следующей зоны. Зоны имеют ширину 15 символов. Если использовать точку с запятой, BASIC не перемещается, а начинает следующий элемент со следующего пробела.

Числовые значения печатаются либо с пробелом в начале, либо со знаком минус, а также с пробелом в конце. Таким образом, числовые значения в операторе PRINT с точкой с запятой в качестве разделителя будут иметь по крайней мере один пробел между значениями. Кроме того, числовые значения всегда будут давать число символов, кратное трем. Таким образом,

ПЕЧАТЬ 12; 34; 56

будет производить

12 34 56

Хотя нет строкового типа данных, в операторах PRINT разрешены строки в кавычках. Если строка в кавычках и числовое значение разделены точкой с запятой в операторе PRINT, точка с запятой может быть опущена.

Если длина напечатанной строки превышает 75 символов, автоматически вводится конец строки. Иногда мы говорим, что MARGIN равен 75.

Определенные функции

Пользователь может определить до 26 новых функций, дав им имена от FNA до FNZ. Каждая такая функция представлена ​​ключевым словом DEF. Должен быть ровно один аргумент. Имя переменной, используемое в качестве аргумента, отличается от имени переменной с таким же именем в остальной части программы. Определение функции должно быть одной строкой следующего вида: 92/2))/SQR(2*3.14159265)
130
140 FOR X = -2 TO 2 STEP .1
150 LET Y = FNN(X)
160 LET Y = INT(100*Y)
170 FOR Z = 1 TO Y
180 ПЕЧАТЬ » «;
190 ДАЛЕЕ Z
200 ПЕЧАТЬ «*»
210 ДАЛЕЕ X
220 КОНЕЦ

100 REM УГАДАЙ ИГРА
110
120 ПЕЧАТЬ «УГАДАЙ ЧИСЛО ОТ 1 ДО 100.»
130
140 LET X = INT(100*RND(0)+1)
150 LET N = 0
160
170 ВХОД G
180 ПУСТЬ N = N+1
190 ЕСЛИ G = X ТО 300
200 ЕСЛИ G < X ТО 250
210 ПЕЧАТЬ «СЛИШКОМ БОЛЬШОЙ, ПОСМОТРИТЕ ЕЩЕ РАЗ»
220 ПЕРЕЙТИ 160
230
250 ПЕЧАТЬ «СЛИШКОМ МАЛЕНЬКИЙ, ПОСМОТРИТЕ ЕЩЕ РАЗ»
260 ПЕРЕЙТИ 160
270
300 ПЕЧАТЬ «Y ВЫ УГАДАЛИ, В»; Н; «Попытки»
310 ПЕЧАТЬ «ДРУГАЯ ИГРА (ДА = 1, НЕТ = 0)»;
320 ВВОД A
330 ЕСЛИ A = 1, ТО 140
340 ПЕЧАТЬ «СПАСИБО ЗА ИГРУ»
350 КОНЕЦ

Команды

Хотя это и не часть BASIC, команды операционной системы включают следующее:

9 0002 ПРИВЕТ Начать новый сессия, введите свой номер пользователя
NEW Запустить новую программу
OLD Получить программу из памяти
SAVE Сохранить текущую программу в памяти
REPLACE Сохранить текущую программу в памяти, перезаписав старую версию
RENAME Переименовать текущую программу
CAT Список имен ваших сохраненных программ (краткий для КАТАЛОГА)
LIST Список текущей программы
RUN Запустить текущую программу
STOP Остановить текущий запуск программы (в случае бесконечного цикла)
UNSAVE Отменить сохранение текущей программы program
SYSTEM Имя системы — ограничено BASIC ( по умолчанию) или АЛГОЛ
BYE Завершить сеанс
GOODBYE То же, что и BYE

Все команды могут быть сокращены до первых трех букв.

За командами NEW, OLD и RENAME может следовать имя программы. Если нет, операционная система запросит у вас название программы. За командой SYSTEM может следовать либо BASIC, либо ALGOL. Если нет, операционная система запросит у вас имя системы. (Как и команды, системные имена могут быть сокращены до трех букв.)

Кроме того, команда SPEED позволяет указать скорость телетайпа для более реалистичного моделирования. Таким образом, SPEED 10 замедлит скорость примерно до 10 символов в секунду.

Отказ от ответственности

В этом кратком руководстве описывается версия BASIC, включенная в эмуляцию. Междустрочный интервал и ответ «ГОТОВ», как это предусмотрено Datanet-30, могут быть не совсем правильными. DTSS также поддерживает Алгол.

если — ОСНОВНЫЕ команды — PICAXE

Имя:
если
Синтаксис:

 

Опции для одной линии:

ЕСЛИ условие ТО этикетка

ЕСЛИ условие ТОГДА ПЕРЕЙТИ к ярлыку

ЕСЛИ состояние ТО этикетка GOSUB

ЕСЛИ условие ТОГДА ВЫХОД

Условие — Условие, при котором связанная команда будет выполнена или нет.

 

Варианты структуры нескольких строк/блоков:

IF условие THEN
  
{code}
ELSEIF условие THEN
  
{code}
ELSE
  
{code}
ENDIF 9 0204

Условие  — Условие, при котором соответствующие кодовые команды будут выполняться или нет.

Код — операторы команд, которые будут выполняться в зависимости от оценки условия . Эти операторы команд могут включать дополнительные однострочные и многострочные команды «если». Это обычно известно как «вложенные операторы if».

 

Описание:

Условно выполнять разделы кода.

Статус if используется для проверки общих переменных (или входных контактов) на определенные условия. Если условие выполняется, соответствующая команда выполняется. В противном случае команда игнорируется, и выполнение программы продолжается на следующей строке после команды «если».

Команды оператора ‘if’ проверяют значения переменных и входные данные во время обработки команды, поэтому нормальным является помещение команды в программный цикл, регулярно сканирующий входные данные.


Условия

Условие определяет, следует ли предпринимать действие или нет. Каждое условие принимает вид —

  значение сравнения переменных
 

Значение переменной сравнивается со значением, чтобы определить, выполняется ли условие. Например —

ЕСЛИ b1 >= 10 ТО …

или  
  переменная переменная сравнения
 

Значение левой переменной сравнивается со значением правой переменной, чтобы определить, выполняется ли условие. Например —

ЕСЛИ b2 < b3 ТО ...

Оператор сравнения может быть любым из . ..

  = равно
  это равно
  <> не равно
  != не равно
  > больше
  < меньше
  >= больше или равно
  <= меньше или равно

Дополнительно для деталей X1 и X2 могут быть применены условия проверки битов —

  переменная BIT номер бита SET
  переменная БИТ номер бита ОЧИСТИТЬ

Результат условия будет зависеть от того, установлен или сброшен бит в переменной . Номер бита — это номер бита в переменной , подлежащей тестированию.

Обратите внимание, что при тестировании входного вывода должно использоваться имя переменной ‘pin’, а не номер контакта или метка port.number контакта. Например —

  ЕСЛИ контакт 2 = 1, ТО GOSUB нажата кнопка
  ЕСЛИ контакт C.0 = 0, ТО кнопка GOSUB не нажата

Если имя переменной ‘pin’ не указано, вероятно, будет вызвана ‘синтаксическая ошибка’ для команды ‘if’. Необходимо соблюдать осторожность при указании входного вывода для тестирования с помощью команды символа. Для получения дополнительной информации о тестировании входных контактов с помощью команды if см. команду if pin.


Несколько условий

В команде if можно указать несколько условий. Это могут быть комбинации «и» или «или» —

  состояние И состояние
  состояние ИЛИ состояние

Комбинированное условие «и» будет оцениваться как истинное только тогда, когда оба условия истинны, в то время как комбинированное условие «или» будет оцениваться как истинное, если истинно любое условие.

Можно добавить дополнительные комбинации «и» или «или», но не рекомендуется смешивать их в комбинированном условном выражении. Например —

  ЕСЛИ b0 > 10 И b0 < 20, ТО ПЕРЕЙТИ К МЕЖДУ 11 И 19
  ЕСЛИ pinC.0 = 1 ИЛИ b1 = 1 ИЛИ b2 = 3, ТО ВЫХОД

ЕСЛИ условие ТО метка

Если условие верно, поток программы переходит к указана метка и продолжается выполнение оттуда.

IF условие THEN GOTO label

Это работает так же, как команда ‘if condition then label’. Если условие истинно, поток программы переходит к указанной метке и продолжает выполнение оттуда.

ЕСЛИ условие ТО GOSUB метка

Если условие истинно, программа выполняет команду gosub на метку, переходя на метку , работает до тех пор, пока не дойдет до команды возврата, а затем возвращается к коду после команды «if condition then gosub label».

ЕСЛИ условие, ТО ВЫХОД

Если условие истинно, то текущий цикл (do…loop или for…next) преждевременно завершается, выполнение программы будет продолжено после ‘цикла’ или ‘следующего команда.


ЕСЛИ условие ТО
  {код}
ELSE
  {код}
КОНЕЦ ЕСЛИ

Многострочная или блочная команда if распределена по нескольким строкам. Когда условие оценивается как истинное, выполняется код между командами «if condition then» и «else», в противном случае выполняется код между командами «else» и «end if». После выполнения любого из наборов кода выполнение программы продолжится в строке после «end if».

 

IF condit ion THEN
  {code}
END IF

Многострочная или блочная команда if может не иметь условия else. Если условие истинно, то выполняется код между командами if condition then и end if, после чего выполнение программы продолжается после команды end if. Если условие ложно, то выполнение программы сразу же продолжается после команды end if.  

ЕСЛИ условие ТО
  {код}
ИНАЧЕ ЕСЛИ условие ТО
  {code}
END IF

Вместо команды else можно использовать команду elseif и указать другое условие. Если первое условие истинно, будет выполнен код между командами «если условие, то» и «иначе, если условие, то»; в противном случае будет выполнено условие «иначе, если»; ‘end if’ будет выполнено.


ЕСЛИ условие ТО
  {код}
ELSEIF условие THEN
  {код}
ELSEIF условие THEN
  {code}
END IF

Дополнительные команды elseif могут быть добавлены, и каждая из них будет оцениваться по очереди, если нет предыдущей ‘ если условие то’ или ‘elseif conditon then’ не оцениваются как истинные.

Команда select case может использоваться вместо вложенных команд ‘if’ или последовательностей команд ‘if’ и ‘elseif’, чтобы сделать выполнение кода более понятным или исходный код более читабельным, особенно с ‘select case’, если одно и то же переменная проверяется повторно, ее нужно указать только один раз. Там, где есть выбор, что использовать, это в основном вопрос личных предпочтений и предпочитаемого стиля программирования.


ЕСЛИ условие ТО
  {код}
ELSEIF условие ТО
  {код}
ИНАЧЕ
  {код}
КОНЕЦ IF

Команда else может быть добавлена ​​к команде if и Последовательность команд ‘elseif’, которая будет выполнена, если ни одно из предыдущих условий ‘if condition then’ или ‘elseif conditon then’ не было оценено как истинное.

Применимо к:
Все
См. также:
  • если контакт
  • иначе
  • endif
Связанное Создать:
    Поделиться:
    Печать:

    Мигает светодиодом при нажатии кнопки

    Постоянно проверяйте C.