Справочник по командам Linux

Обновлено: 21.11.2024

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

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

Краткие названия команд

Команды UNIX не обязательно являются самыми простыми для запоминания. Они предназначены для коротких команд, чтобы уменьшить количество ввода:

например.
ls - Список содержимого каталога
cd - Изменить каталог
cp - Копировать
pg - Показать вывод на одну страницу больше - Аналогично pg меньше - Как больше, но с большим количеством особенности!

Это может немного усложнить запоминание, но избавляет от необходимости печатать при вводе большого количества команд.

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

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

В следующем примере показана команда ls, которая передается через команду more, так что за один раз отображается один полный экран.

Это будет обсуждаться более подробно позже.

Формат команд

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

параметр(ы) команды, аргумент(ы)

Примером этого может быть команда ls. Команда ls будет объяснена отдельно; пока достаточно знать, что команда ls выведет список содержимого каталога и примет определенные параметры и аргументы (аналогично команде dir в DOS/Windows). Одна из опций команды ls — это опция «-l», которая означает предоставление более подробной информации о файлах, а другая — «-a», которая показывает все файлы, включая скрытые файлы. Предоставленный аргумент — это имя файла или каталога.

ls -l /home/stewart

покажет содержимое моего домашнего каталога. Параметр -l — это параметр, который меняет способ запуска программы, а аргумент /home/stewart сообщает программе, в каком каталоге искать. Команда ls не требует никаких параметров или аргументов. Например, следующие команды также являются допустимыми.

ls /home/stewart показывает краткий список каталога
ls -l показывает полный список текущего каталога
ls показывает краткий список текущего каталога

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

ls -l -a /дом/стюарт

ls -la /home/stewart

оба вышеперечисленных действия дадут один и тот же результат.

Максимальное использование команд UNIX

Несмотря на то, что количество опций для каждой команды UNIX поначалу может показаться огромным, это часть того, что делает UNIX такой мощной. Еще одна особенность, которая делает UNIX такой мощной, — это возможность комбинировать несколько команд, чтобы сделать их более полезными. Это может быть достигнуто либо путем объединения команд в командной строке, либо путем объединения команд в файл сценария, который может варьироваться от чего-то очень тривиального до самостоятельной программы.

Использование командных переключателей

Самый простой способ расширить функциональные возможности команды – попробовать некоторые из доступных переключателей.

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

$ ls docs readme.txt файл1.txt файл2.txt

При добавлении параметра '-l' предоставляется дополнительная информация.

Конвейеры (|)

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

Точка представляет собой вертикальную черту '|'. На стандартной британской клавиатуре это обычно находится в левом нижнем углу клавиатуры и набирается с помощью клавиши Shift и клавиши «\». На американской клавиатуре используется та же клавиша «\», но иногда она располагается над клавишей RETURN. На других европейских клавиатурах это может быть одна из цифровых клавиш (например, Alt-Gr 6).

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

Например, для сортировки основного списка каталогов по имени команда ls передается через команду sort.

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

Перенаправление stdout, stdin и stderr (>

Вывод команды ls может быть перенаправлен в файл, который в данном случае называется dirlist.txt

Если файл dirlist.txt уже существует, он будет удален. Также можно добавить вывод в конец существующего файла, используя >> вместо >.

echo "Это следующая строка журнала" >> log.file

Здесь любой существующий контент останется, но текст "Это следующая строка журнала" будет добавлен в конец файла.

Стандартная ошибка перенаправления (stderr) 2>

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

Если команда запускается автоматически без участия пользователя, возможно, никто не увидит сообщения, выводимые на экран. Таким образом, стандартный поток данных об ошибках можно перенаправить аналогично стандартному выводу, добавив перед перенаправлением цифру 2. На самом деле поток данных stdout должен иметь префикс цифры 1, однако он отбрасывается, чтобы не набирать текст. Чтобы перенаправить любые сообщения об ошибках в файл error.log и обычные ответы на файл журнала, будет использоваться следующее.

команда >log.file 2>error.log

Одиночный знак "больше" (>) можно заменить двойным знаком "больше" (>>), если вы хотите, чтобы выходные данные добавлялись к файлу, а не перезаписывали его.

Кроме того, в один и тот же файл можно записать и стандартный вывод, и стандартный поток ошибок. Как вы могли ожидать, это не просто случай использования одного и того же имени файла в приведенной выше команде. Причина этого в том, что файл может быть открыт для записи только одним процессом за раз. Два перенаправления являются двумя разными процессами и не позволяют обоим потокам записывать в один и тот же файл. Этого можно достичь, перенаправив поток данных об ошибках в поток данных stdout с помощью 2>&1. Что теперь дает:

команда >output.file 2>&1

Использование временного файла

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

сортировать файл1 >файл1 Это неверно

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

сортировать файл1 >/temp/tmp$$
mv /tmp/tmp$$ файл1

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

Вывод в файл и командную строку (тройник)

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

Команда tee используется внутри конвейера, и все входные данные, которые она получает, помещает выходные данные в файл и пересылается по конвейеру.

команда | тройник1

Вышеприведенная строка возьмет все выходные данные команды и поместит копию в файл1, а также отправит ее на экран. Это может быть дополнительно объединено, позволяя дальнейшей обработке вывода другой командой. Команду tee можно использовать любое количество раз в подобном конвейере.

команда1 | тройник файл1 | команда2

Если вы хотите, чтобы tee дописывал файл, а не перезаписывал его, используется параметр -a.

(на самом деле существуют альтернативные способы выполнения конкретных передач по ftp, которые не требуют интерактивного ввода, например, использование nftp, lftp или, в некоторых случаях, sitecopy).

Без клещей

Перенаправление на файл может иметь неприятные последствия, если файл уже существует и не требует замены. При неправильном использовании перенаправления можно случайно перезаписать важный файл. В оболочке bash/korn есть опция, позволяющая предотвратить ошибочную перезапись файлов. Это параметр noclobber, который задается вводом

установить -o noclobber

Если сейчас будет предпринята попытка перезаписать файл, оболочка выдаст сообщение об ошибке и предотвратит запись в файл. Параметр «Нет клоббера» можно отключить с помощью

При необходимости параметр noclobber можно поместить в профиль пользователя, чтобы он устанавливался автоматически.

Таблица файловых дескрипторов

Использование stdin, stdout и stderr возможно с использованием только одного знака меньше/больше из-за способа, которым процессы назначаются таблице файловых дескрипторов.

Таблица дескрипторов файлов представляет собой список номеров, относящихся к открытым файлам. Первые 3 файла, которые нужно открыть, это stdin, stdout и stderr, они пронумерованы 0 для stdin, 1 для stdout и 2 для stderr. Следовательно, на stdin и stdout можно ссылаться соответственно (без дальнейшего имени файла), тогда как stderr требует 2>, чтобы убедиться, что именно выходной поток с номером 2 должен быть перенаправлен.

Эта простая памятка поможет вам быстро освоиться с терминалом командной строки Linux.

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

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

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

Шпаргалка по командной строке Linux

< tr>< /tr>< tr>< td>Отображает текущее имя пользователя.< /tr>
Терминал
clearОчистить экран терминала.
историяПоказать недавно использованные команды. Вы также можете просматривать эти команды с помощью клавиш «Вверх» и «Вниз».
!Повтор недавно использованной команды. Вы можете использовать !n для повторения n-й команды в истории или !-n для повторения того, что произошло n команд назад.
manПоказать руководство по терминальной программе.
что такоеПоказать краткое описание терминальной программы. Более простая альтернатива команде man.
псевдонимСоздание ярлыка для команды или, в сочетании с командой cd, каталога.
выходВыход или закрытие терминала.
Навигация и управление файлами
cdИзменить каталог. Используется для навигации между папками.
pwdПоказать текущий каталог.
cdИзменить текущий каталог.
lsОтобразить список файлов в текущем каталоге.
cpСоздает копию файла. По умолчанию используется текущий каталог, если вы не укажете конкретный.
mvПереместить файл из одного каталога в другой.
rmУдалить файл или набор файлов.
статистикаОтображать, когда файл был последний доступ, изменение или изменение.
коснитесьИзменить дату доступа или время изменения даты данного файла на прямо сейчас.
rmdirУдалить файл или файлы.
mkdirСоздать каталог. По умолчанию используется текущий каталог, но вы также можете указать его.
rmdirУдалить каталог. По умолчанию используется текущий каталог, но вы также можете указать его. Целевой каталог должен быть полностью пуст.
переименоватьИзменить имя файла или набора файлов.
найтиПоиск в определенном каталоге (или на всем компьютере), чтобы найти файлы, соответствующие заданным критериям.
найти Поиск файлов или каталогов. Быстрее, чем команда find, но имеет меньше параметров.
grepПоиск определенного файла или набора файлов, чтобы увидеть, существует ли текстовая строка и где.
mountПодключить отдельную файловую систему (например, внешний жесткий диск или USB-накопитель) к основной файловой системе вашей системы.
umountОтсоединить отдельную файловую систему от основной файловой системы вашей системы.
catОтобразить содержимое текстового файла. Также работает с несколькими файлами.
chmodИзменить права на чтение, запись и выполнение файла.
chownИзменить пользователя или группу, владеющую файлом.
Пользователи
suСменить пользователя. Если вы не назначите конкретного пользователя, эта команда попытается войти в систему как пользователь root (которого вы можете считать системным администратором).
whoami
idОтображает текущего пользователя и группу.
passwdСоздание или обновление пароля пользователя.
Системное администрирование
unameОтображает базовую системную информацию, такую ​​как версия ядра, оборудование и операционная система.
sudoВведите перед командой для выполните команду от имени системного администратора. Для этого пользователь должен иметь права администратора.
apt/dnf/pacmanПрограммы для установки программного обеспечения и обновлений. Какой из них использовать, зависит от вашей операционной системы на базе Linux. Для каждого требуются права администратора и дополнительные инструкции, такие как sudo apt install имя_программы .
jobsПоказать статус всех текущих заданий. Задание — это представление запущенного процесса или группы процессов.
bgОтправить задание в фоновый режим.
fgОтправить задание на передний план.
killЗавершить процесс в соответствии с его идентификатор процесса (который можно получить с помощью команды ps.
killallЗавершить все процессы, имена которых соответствуют вашему запросу.
psОтображение списка запущенных процессов. По умолчанию это процессы, запущенные текущим пользователем.
top Отображает список запущенных процессов, отсортированных по степени использования ЦП. В отличие от ps, команда обновляется в режиме реального времени.
время безотказной работыПоказывает время с момента последней загрузки.
гдеНаходит исполняемый файл программы.
dfПоказывает, сколько дискового пространства используется и сколько свободно в вашей системе.
свободноПоказывает, сколько оперативной памяти используется и бесплатно в вашей системе.
Network Managementmen t
ipОтображает ваш IP-адрес, сетевые интерфейсы, использование полосы пропускания и многое другое.
pingОтправить или получить данные с другого компьютера в сети. Часто используется для проверки наличия сетевого подключения и скорости этого подключения.
digПоиск DNS-адреса домена
wgetЗагрузить файл.
sshSecure Shell. Подключитесь и войдите в удаленную сетевую папку.
Разное
echoОтобразить строку текст. Часто используется в программах и скриптах для передачи информации пользователям.
факторОтображает возможные коэффициенты десятичного числа.
exprРешите математические уравнения.
поискПоиск слова в словаре.

Дополнительные команды терминала Linux

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

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

Показывает список ваших файлов вместе с их размером в килобайтах.

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

Все эти переключатели можно комбинировать, поэтому можно ввести

чтобы вывести список всех своих файлов и определить их размер.

Удаляет файлы или деревья каталогов. Отмены нет! Может использоваться для удаления всех файлов и подкаталогов с помощью rm –rf .

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

Альтернативой является

который будет использовать /bin/rm, пока вы не выйдете из системы.

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

Создает новый каталог. Вы можете указать местоположение, если хотите.

Удаляет (удаляет) каталог. Вы можете использовать это только для пустых каталогов.

Список всех файлов и папок с соответствующими общими размерами в килобайтах.

Отображает текущее использование дискового пространства и квоты печати. Опция –w также позволяет увидеть квоты рабочего каталога.

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

Управление программой

Инструмент man для Linux — это сокращение от «вручную». Большинство программ и утилит Linux имеют краткую документацию, установленную в системе. Чтобы получить доступ к этим онлайн-руководствам,

где [имя программы] — это утилита или приложение Linux, подобное описанным в этом руководстве.

Примечание. Не все утилиты и приложения имеют справочные страницы.

Существует множество типов файлов, обычно используемых в системах Linux, которые могут никогда не увидеть люди, знакомые только с Windows. Утилита apropos — это полезный инструмент для поиска подходящей утилиты или приложения, которое открывает файл определенного типа. Обратите внимание, что apropos может не знать обо всех типах файлов.

(где [тип файла] — это расширение файла)

Примечание. В настоящее время эта утилита корректно работает только на рабочих станциях Linux.

Утилита ps — это еще один способ отобразить список программ, запущенных в системе. Просто введите ps, чтобы отобразить список программ, которые были запущены из определенного окна терминала, в котором находится пользователь. Чтобы увидеть более полезный список всех программ, запущенных в системе,

(возвращает все процессы, запущенные для [имя пользователя])

Используйте эту утилиту Linux в сочетании с ps, чтобы завершить запущенную программу в системе по идентификатору процесса (первый столбец в выводе ps).

Печать

lpr можно использовать для печати ТОЛЬКО файлов postscript или плоского текста из командной строки или из диалогового окна печати приложения.

Если вы опустите -P. файл будет распечатан на принтере по умолчанию для каждой лаборатории.

Чтобы переопределить двустороннюю печать по умолчанию и настроить одностороннюю печать, используйте lpr -o sides=one-side

Acrobat Reader позволяет пользователям просматривать и распечатывать PDF-файлы. Его можно вызвать, введя acroread в командной строке.

После запуска Acrobat файл для просмотра можно выбрать, нажав «Файл» и «Открыть». Прокрутите список вверх и вниз, чтобы найти нужный файл, и щелкните его, чтобы открыть.

GhostView — это программа для просмотра и навигации по документам PostScript и PDF на дисплее X, предоставляющая пользовательский интерфейс для интерпретатора ghostscript. GhostView можно запустить, введя gv в командной строке.

Очереди печати используются для печати задания после его буферизации на принтере. pq используется при печати на компьютерах с Linux.

Удаленный доступ

Secure Shell — это программа для входа на другой компьютер по сети, для выполнения команд на удаленном компьютере и для перемещения файлов с одного компьютера на другой. Он обеспечивает строгую аутентификацию и безопасную связь по незащищенным каналам.

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

Утилита sftp представляет собой безопасную версию ftp и работает почти так же. Ftp — это протокол передачи файлов, который позволяет загружать и скачивать файлы на компьютер, на котором запущен сервер sftp (все машины EWS делают это как часть доступа по ssh).

(Аналогично команде ssh)

Копирует один файл или папку с несколькими файлами, используя безопасный протокол через TCP/IP (сеть) с одного компьютера на другой. Это редко бывает полезно в среде EWS, поскольку ваш домашний каталог монтируется на всех рабочих станциях. Однако может оказаться полезным скопировать данные на другой компьютер в кампусе или за его пределами, на котором работает сервер ssh.

Чтобы скопировать один файл с удаленной рабочей станции на вашу рабочую станцию:

Где [локальный путь] — это место, где вы хотите сохранить скопированный файл (местоположение . — это ваше текущее местоположение).

Аналогично, чтобы скопировать его с вашей рабочей станции на удаленную рабочую станцию:

Чтобы скопировать всю папку, как указано выше, соответственно:

Общие задачи

Когда mozilla firefox закрывается ненормально, например, когда mozilla firefox неожиданно закрывается из-за программной ошибки, иногда может быть оставлен файл блокировки, что приводит к тому, что используемый профиль mozilla firefox становится непригодным для использования. Запустите эту команду, чтобы удалить любые файлы блокировки или .parentlock:

Запуск во второй раз удалит весь профиль Firefox, включая все закладки и т. д.

Утилита getskel перезагружает оболочку по умолчанию и конфигурацию X Windows в вашу учетную запись. Используйте это, если в файлы конфигурации были внесены изменения, вызывающие проблемы.

Примечание. Это приведет к удалению всех настроек, которые вы добавили в файлы запуска.

Прежде чем вы сможете получить доступ к своему диску, вы должны сначала смонтировать его. Для этого поместите диск в дисковод и в командной строке Linux введите volcheck. Машина проверит наличие новых дисков и смонтирует их соответствующим образом. Файлы на смонтированном диске можно найти в каталогах /floppy, /zip или /cdrom. Когда вы закончите использовать диск, для его извлечения необходимо использовать следующее на диске соответствующего типа.

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

Изменение каталогов (cd)

При первом входе в систему UNIX вы обычно находитесь в своем «домашнем» каталоге. Обычно это /home/username (для пользователя stewart это будет /home/stewart).

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

Печать рабочего каталога (pwd)

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

Есть также две переменные оболочки, которые обычно устанавливаются. Для просмотра текущего рабочего каталога вы можете просмотреть переменную $PWD, а для просмотра предыдущего каталога есть переменная $OLDPWD.

Переменная $OLDPWD полезна, если вы хотите вернуться в каталог, в котором находились ранее.
например.

Список содержимого каталога (ls)

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

Ввод ls сам по себе отобразит список всех файлов и каталогов, содержащихся в текущем каталоге.

Опция -l используется для предоставления дополнительной информации, включая: разрешения; владелец и группа владельцев; размер файла и дата последнего изменения в дополнение к имени файла.

Создание нового каталога (mkdir)

Новые каталоги можно создавать с помощью команды mkdir. Каталоги можно создавать либо по отдельности (в этом случае все каталоги над ним уже должны существовать), либо несколько одновременно, что позволяет создавать родительские каталоги одновременно.

Создание одного каталога из текущего каталога выполняется командой mkdir, за которой следует имя нового каталога. Например:

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

mkdir -p /home/stewart/newdir1/newdir2

Создание нового файла/изменение временных меток файла (нажмите)

Распространенный способ создания файла — сохранение в файл из приложения. Также можно создать пустой файл с помощью сенсорной команды. Формат должен иметь имя файла после сенсорной команды. Например:

При создании файла необходимо соблюдать следующие правила:

Хотя это часто является наиболее распространенным использованием сенсорной команды, у нее есть и другие применения. На самом деле реальная функция сенсорной команды заключается в изменении временных меток модификации и/или доступа к файлу.

Опция -a изменяет время доступа, опция -m может использоваться для изменения времени последнего изменения. Новое время задается с помощью параметра -t, чтобы указать время, или параметра -r, чтобы установить значение, совпадающее с другим файлом. Если время не указано с помощью -t или -r, будет использовано текущее время.

Примеры

touch -m -t 201205251700 этот файл
установит дату последнего изменения этого файла на 25 мая 2012 года, 17:00. Это основано на версии POSIX команды touch (существует другая версия, которая не соответствует стандарту POSIX, но версия POSIX является наиболее распространенной).

В следующем примере дата изменения устанавливается такой же, как у другого файла. Иногда это используется для сценариев резервного копирования, где время модификации может быть установлено таким же, как и для другого файла, чтобы его можно было определить, нужно ли включать файл в добавочное резервное копирование.
touch -m -r referencefile thisfile

Удаление файла (rm)

Файлы удаляются с помощью команды rm. Чтобы удалить файл, введите rm, за которым следует имя файла (может включать путь).

Невозможно восстановить удаленный файл (кроме как из резервной копии), поэтому будьте осторожны при удалении файлов. Несколько более безопасный вариант — использовать параметр -i, который будет запрашивать удаление каждого файла. Это особенно полезно при использовании подстановочных знаков (см. далее). Можно настроить свой профиль так, чтобы по умолчанию всегда использовалась опция -i (см. команду alias).

Удаление каталога (rmdir / rm)

Самый безопасный способ удалить каталог — сначала удалить из него все файлы. Затем проверьте, что каталог пуст, введя ls -a (-a покажет все файлы, даже если они скрыты). Затем перейдите в каталог выше и введите

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

Для более бесцеремонного удаления каталога или нескольких каталогов можно использовать команду rm. Для этого введите rm -r, а затем имя каталога. Например:
rm -r имя_каталога

Предупреждение: это очень опасная команда.
Команда rm -r удалит все каталоги ниже указанного.
Будьте особенно осторожны, если вы вошли в систему как пользователь root, так как это может привести к удалению всех данных на диске.

Невозможно восстановить файлы, которые были удалены по ошибке.
Использование команды rm удалит файл. Единственный способ восстановить файл, если он был случайно удален, — это скопировать его с последнего резервного диска (если он есть)! Это не то же самое, что использование корзины через графический интерфейс или файловый менеджер, который может позволить восстановить файл (если только файл не может быть сохранен в корзине или он не был очищен).

Перемещение/переименование файла или каталога (mv)

Файлы или каталоги можно перемещать или переименовывать с помощью команды перемещения (mv). Чтобы переместить файл, введите команду mv, затем имя файла, а затем новый каталог. Чтобы переименовать файл или каталог, введите команду mv, за которой следует старое имя и новое имя.

Вы можете использовать путь вместе с именем файла.

Использование параметра -i предотвратит случайную перезапись существующего файла.

Копирование файла (cp)

Файлы можно копировать с помощью команды cp. Введите cp, затем существующий файл, а затем новый файл (может включать пути). Если указать второй параметр (новый файл) в качестве имени каталога, файл будет скопирован в другой файл с таким же именем в новом каталоге.

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

Просмотр содержимого текстового файла/объединение файлов (cat)

Вы можете просмотреть содержимое текстового файла с помощью команды cat. Хотя слово cat может показаться странным для команды просмотра файла, это связано с тем, что эту команду можно использовать для объединения двух файлов в один (название происходит от concatenate).

Чтобы просмотреть файл с помощью cat

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

Объединение показано в следующем примере

cat имя_файла1 имя_файла2 > имя_файла 3

Здесь имя файла 3 будет содержать имя файла1, за которым следует имя файла 2.

Другие команды, которые можно использовать для просмотра файла, включая more, less, pg и view. Cat удобен для автоматизации задач, так как не требует взаимодействия с пользователем.

Просмотр начала/конца текстового файла (голова/конец)

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

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

имя файла заголовка
или
имя файла конца

который будет отображать первые или последние 10 строк файла соответственно.

Одним из вариантов использования команды tail является просмотр конца файла, который находится в процессе обновления. Команду можно многократно запускать для файла, чтобы показать любые новые дополнения к файлу; если файл не был изменен, то будет повторно отображен предыдущий вывод или, если файл изменился слишком сильно, некоторые строки могут быть пропущены. Лучше использовать параметр -f, который будет отображать все новые строки, добавленные в файл.

хвост -f имя файла

Проверка типа файла (файла)

Если вы попытаетесь просмотреть содержимое нетекстового файла, вы часто будете получать мусор на экране. Иногда это фактически мешает вам использовать этот терминал, изменяя отображение клавиатуры или экрана. Поэтому перед просмотром содержимого рекомендуется проверить, что представляет собой неизвестный файл.

Один из способов сделать это — использовать команду file. Вход

сообщит вам, является ли файл текстовым файлом, командным файлом или каталогом и т. д.

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

Поиск файлов и команд (find)

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

Команда задается путем указания каталога и последующего поиска во всех каталогах под ним.

Самый распространенный способ использования команды find — поиск программы или файла по имени. Для поиска по всему компьютеру файла с именем filename будет использоваться следующая команда.

найти / -name имя файла

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

Очистить

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

Команда echo просто выводит на экран то, что вы печатаете.

Хотя на первый взгляд эта команда может показаться не очень полезной; в сочетании с другими командами через конвейеры или в сценариях это действительно может быть очень полезно.

Изменение прав доступа к файлам (chmod)

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

Команду chmod можно использовать одним из двух способов. Символический формат или восьмеричный формат. Символический формат полезен для новых пользователей, так как он проще в использовании, однако после изучения восьмеричного формата он может стать эффективным и быстрым способом изменения прав доступа к файлам.

Основной формат

имя файла режима chmod

Отличается только формат параметра режима.

В символьном формате разрешения добавляются или удаляются с помощью следующих символов:

Например, из предыдущей записи ls у нас есть файл с именем file1, в который мы хотели бы, чтобы группа могла писать:

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

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

Чтобы использовать восьмеричный формат, мы не просто вносим изменения, а выдаем команду на все разрешения для файла.

Поэтому права доступа к файлу будут иметь восьмеричное число 764 и, следовательно, будут изменены с помощью команды

chmod 764 файл1

Основной способ решить эту проблему – добавить следующие числа в зависимости от требуемого разрешения.
Чтение = 4
Запись = 2
Выполнение = 1

Поэтому, если вы хотите установить для чтения значение yes, для записи значение no и для выполнения значение yes, это будет 4+1=5

Смена владельца файла (chown)

Формат следующий:

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

Псевдонимы (alias)

Команда alias используется для установки альтернативных имен для команд. Формат команды следующий:
alias newcmdname='normalcmdname -args'

Когда вы введете newcmdname, произойдет то, что оно будет заменено на normalcmdname -args. Примечание: это произойдет только для команд, введенных в командной строке, и не повлияет на файлы сценариев. Несколько примеров того, где это было бы полезно, показаны ниже:

псевдоним rm='rm -i'
Это будет включать опцию -i для любой команды удаления. Это дает интерактивные подсказки, так что вас спросят, хотите ли вы удалить каждый файл.

alias up='cd ..'
Каждый раз, когда вы вводите команду up, вы поднимаетесь на один уровень вверх по дереву каталогов. Это полезно, если вы или пользователь не можете вспомнить команду, так как вы можете упростить запоминание псевдонимов.

Читайте также:

ПользовательГруппаДругие
Символическийrwxrw-r--
Двоичный111110100
4+2+14+2+04+ 0+0
Восьмеричный764