Команды Linux, Которые Должен Знать Каждый Пользователь
Большинство людей думают, что Linux — это сложная операционная система, которая используется только программистами. Но на самом деле это не так. К тому же базовые команды Linux довольно понятны и просты.
Linux — это целое семейство операционных систем Unix с открытым исходным кодом, основанных на ядре Linux. Сюда входят все самые популярные системы на основе Linux, такие как Ubuntu, Fedora, Mint, Debian и другие. Если быть точным, их называют дистрибутивами.
С тех пор как Linux был впервые выпущен в 1991 году, он продолжал набирать популярность благодаря открытому исходному коду. Люди могут свободно модифицировать и распространять его под своим именем.
При работе с ОС Linux вам нужно использовать оболочку — интерфейс, который даёт вам доступ к службам операционной системы. В большинстве дистрибутивов Linux для удобства в качестве оболочки используется графический интерфейс пользователя (GUI).
При этом рекомендуется использовать интерфейс командной строки (CLI), так как он более мощный и эффективный. Задачи, для решения которых в графическом интерфейсе понадобиться много этапов, можно выполнить за считанные секунды, вводя команды в CLI.
Так что, если вы планируете использовать Linux, знание базовых командных строк является необходимостью. В этой статье вы узнаете основные команды 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 объединяет два файла (filename1 и filename2) и сохранит их содержимое в новом файле filename3
- Чтобы преобразовать файл в верхний или нижний регистр, cat filename | tr a-z A-Z >output.txt
5. Команда cp
Используйте команду cp для копирования файлов из текущего каталога в другой каталог. Например, команда cp cats.jpg/home/username/Pictures создаст копию cats.jpg (из вашего текущего каталога) в каталог Pictures.
6. Команда mv
Основное предназначение команды mv — перемещение файлов, хотя её также можно использовать для их переименования.
Аргументы в mv похожи на аргументы команды cp. Вам нужно ввести mv, имя файла и каталог назначения. Например: mv file.txt/home/username/Documents.
Команда Linux для переименования файлов будет выглядеть так: mv old_name.ext new_name.ext.
7. Команда mkdir
Используйте команду mkdir, чтобы создать новый каталог. Если вы введёте mkdir Music, команда создаст каталог с именем Music.
Дополнительные команды mkdir:
- Чтобы создать новый каталог внутри другого каталога, используйте эту базовую команду Linux mkdir Photos/Nature;
- Используйте опцию p (parents), чтобы создать каталог между двумя существующими каталогами. Например, mkdir -p Photos/Nature/Ocean создаст новый каталог «Nature»
8. Команда rmdir
.Если вам нужно удалить каталог, используйте команду rmdir. Однако rmdir позволяет удалять только пустые директории.
9. Команда rm
Команда rm используется для удаления каталогов и содержимого внутри них. Если вы хотите удалить только каталог, в качестве альтернативы rmdir используйте rm -r.
Примечание: будьте очень осторожны с этой командой и всегда проверяйте, в каком каталоге вы находитесь. Она удаляет всё и её невозможно отменить.
10. Команда touch
Команда touch позволяет создать новый пустой файл через командную строку Linux. В качестве примера введите touch /home/username/Documents/index.html, чтобы создать файл HTML с названием index в каталоге Documents.
11. Команда locate
Используйте эту команду, чтобы найти нужный вам файл. Она работает, как команда поиска в Windows. Более того, аргумента -i сделает команду нечувствительной к регистру, благодаря чему вы сможете искать файлы, даже если вы не помните их точные названия.
Чтобы найти файл, содержащий два или более слов, используйте звёздочку (). Например, команда locate -i schoolnote будет искать любой файл, содержащий слова «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 user file.txt сделает user владельцем file.txt.
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
Эта команда используется для перемещения некоторых данных в файл. Например, если вы хотите добавить текст «Здравствуйте, меня зовут Джеймс» в файл с именем 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, несомненно, принесёт вам пользу. Удачи!
Зачем нужна команда pwd и что такое текущая рабочая директория
Из этой статьи вы узнаете, как определить текущую рабочую директорию (current working directory) с помощью команды pwd.
Что такое текущая рабочая директория
Текущая рабочая директория — директория, в которой пользователь работает в данный момент. При взаимодействии с командной строкой вы всегда находитесь внутри директории.
По умолчанию, когда вы запускаете операционную систему Linux, текущим рабочим каталогом является домашняя директория. Изменить рабочую директорию можно с помощью команды cd.
Например, чтобы изменить текущую рабочую директорию на /tmp, используйте такую команду:
Путь к текущей рабочей директории может отображаться в оболочке командной строки.
Команда pwd
Команда pwd выводит текущую рабочую директорию. Это одна из базовых и самых популярных команд в Linux. При вызове pwd выводится полный путь к текущей рабочей директории.
Команда pwd встроена в большинство современных командных оболочек, в том числе в Bash. Её поведение отличается от выполнения /bin/pwd. С помощью команды type можно получить все места, где есть pwd:
Как показывает вывод, встроенная команда pwd имеет более высокий приоритет по сравнению с /bin/pwd. Поэтому она используется всякий раз, когда вы вводите в командую строку pwd. Если вы хотите использовать файл /bin/pwd, нужно указать в командной строке полный путь до него.
Как найти текущую рабочую директорию
Чтобы понять, в какой директории вы работаете в данный момент, введите в терминале pwd. Вывод может выглядеть так (название директории может отличаться):
Всё, что делает команда pwd — выводит значение переменной окружения PWD. Такой же вывод получится, если ввести в терминале:
Команда pwd принимает только два аргумента:
- -L (—logical) — не разрешать симлинки.
- -P (—physical) — отображать физическую директорию без симлинков.
По умолчанию pwd ведёт себя так, как будто применена опция -L.
Чтобы понять, как работает аргумент -P, создадим директорию и симлинк, указывающий на эту директорию.
Когда вы зайдёте в директорию /tmp/symlink и введёте команду pwd, вывод будет таким:
То есть текущей рабочей директорией становится /tmp/symlink. Если ввести команду pwd -P, вывод будет таким:
Симлинк (англ. Symlink, symbolic link) — символическая ссылка. Этим термином обозначают файл, в котором содержится абсолютный или относительный путь к другому файлу или директории.
То есть получаем директорию, на которую указывает симлинк.
Заключение
Текущая рабочая директория — директория, из которой вы вызываете команды в терминале. Чтобы отобразить текущую рабочую директорию, нужно использовать команду pwd. Если у вас остались вопросы, добро пожаловать в комментарии.
Команда pwd Linux
Команда pwd — это очень простая утилита, которая позволяет вывести в терминал путь к текущей папке. Каждая программа при запуске получает текущую папку в которой будут выполнятся все операции с её файлами если для них не указан другой путь. Все относительные пути тоже будут отсчитываться от этой папки.
При запуске терминала текущей папкой считается домашний каталог пользователя. Если программу запускать из определенной папки, то ее текущей папкой будет та папка, из которой ее запустили.
Команда pwd в Linux
Синтаксис команды очень простой:
$ pwd опции
Вот основные опции, которые вы можете использовать для настройки вывода утилиты:
- -L, —logical — брать директорию из переменной окружения, даже если она содержит символические ссылки;
- -P — отбрасывать все символические ссылки;
- —help — отобразить справку по утилите;
- —version — отобразить версию утилиты.
Дальше рассмотрим несколько примеров работы с командой. Для того чтобы просто посмотреть текущую папку Linux достаточно выполнить pwd без параметров:
Также у команды есть одна опция -P. Если по пути к текущей папке есть символические ссылки, то утилита покажет полный путь без учета символических ссылок:
В большинстве командных интерпретаторов pwd — это встроенная команда. Поэтому интерпретатору не нужно вызвать внешнюю утилиту и выполнение когда работает очень быстро.
Чтобы узнать текущую папку в скрипте не обязательно использовать эту команду. Достаточно обратится к переменной окружения PWD:
Но также можно записать результат выполнения команды pwd linux в переменную:
CWD=$(pwd)
echo $CWD
Выводы
Команда pwd Linux используется достаточно редко, намного чаще нам нужно менять текущую папку. Для этого применяется команда cd. Как видите, все очень просто.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Name already in use
articles / Linux / pwd.md
- Go to file T
- Go to line L
- Copy path
- Copy permalink
- Open with Desktop
- View raw
- Copy raw contents Copy raw contents
Copy raw contents
Copy raw contents
PWD — Print Work Directory
What is the pwd command?
The pwd command is a command line utility for printing the current working directory.
Options | command |
---|---|
Print the current working directory | pwd |
Display the logical current working directory | pwd -L |
Avoid symlinks | pwd -P |
Reference pwd in shell scripts | echo $PWD |
Display pwd command version | pwd —version |
Information about pwd | pwd —help |
Display in command line prompt | |
Set multi-line command line prompt | |
One Liners | |
Notes |
Exit Status | Message |
---|---|
0 | Success |
Non-zero | Failure |
Print the current working directory: pwd
Display the logical current working directory: pwd -L , —logical
The -L option stands for Logical Links. It cause pwd to use variable $PWD from environment, even if it contains symlinks. It does not resolve symlinks.
Avoid symlinks: pwd -P , —physical
The -P option stands for Physical Links. It will cause pwd to show the physical location rather than a symlink.
- If no options are given at run-time does “pwd” takes option -P into account automatically.
Reference pwd in shell scripts:
In most shells the $PWD variable is available and is set each time a user or in script changes directory. As such this variable can be referenced to show the current working directory.
- pwd command could be stored in a variable.
- Is it better to use $(pwd) or $PWD ? — See the answers here.
Display pwd command version: /bin/pwd —version
To see information about pwd, enter: /bin/pwd —help
Display in command line prompt:
Set multi-line command line prompt:
What is the absolute path (starting from /) of the pwd source file?
/usr/include/pwd.h
What is the absolute path (starting from /) of the pwd binary file?
/bin/pwd
Print the absolute path (starting from /) of the pwd manual pages file.
/usr/share/man/man1/pwd.1.gz
pwd is normally a shell builtin
In most shells pwd is a shell builtin. This means the command is present in the shell rather than calling an external program. This means that the code will run significantly faster than calling an external executable.
Whilst most shells have pwd as a shell builtin the command also exists on systems as an executable.