Терминал на mac (macos): что это, команды, синтаксис

Опции whereis

Вот основные опции whereis:

  • -b — поиск бинарных файлов.
  • -B <папки> — ведет поиск исключительно в указанных пользователем директориях.
    -m — поиск мануалов.
  • -M <папки> — ищет справочные файлы в тех директориях, которые выбрал пользователь.
    -s — поиск исходников.
  • -S <папки> — будет искать исходные файлы только там, где нужно пользователю
  • -u — запрашивает вывод тех команд, у которых отсутствует указанный тип файлов либо имеется в наличии два и больше таковых. К примеру, whereis -m -u* пригодится для поиска команд без мануала или с двумя мануалами.
  • -f — должна завершать перечень директорий, поскольку сигнализирует о том, что набор символов, идущий сразу после нее, является названием файла.
  • -l — показывает каталоги, в которых по умолчанию происходит поиск.

Вместо <папки> следует прописывать путь к требуемой директории.

Установка, удаление и обновление пакетов

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

Debian/Ubuntu

  • sudo apt-get install название пакета — устанавливает программу на выбор. Главное знать, как она называется.
  • sudo apt remove название пакета — стирает с жесткого диска имеющийся в системе пакет.
  • sudo apt-get update — обновляет информацию о пакетах, имеющихся в системе, и тех, что хранятся в подключенных репозиториях.
  • sudo apt-upgrade — обновляет установленные пакеты до самых свежих версий, доступных в подключенных репозиториях.

Red Hat Linux/CentOS

  • sudo dnf install название пакета — устанавливает программу на выбор.
  • sudo dnf upgrade — обновляет установленные пакеты до самых свежих версий.
  • sudo dnf remove название пакета — стирает с жесткого диска имеющийся в системе пакет.

Системные функции Windows и администрирование

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

  • explorer – запуск Проводника. В системе, которая работает исправно, открыть Проводник можно с помощью меню «Пуск». Но если возник черный экран, и курсор пропал, то команда сможет снова открыть панель задач, отображения рабочего стола и другие штатные элементы системы.
  • msconfig – конфигурации системы. Утилита полезна в тех случаях, когда необходимо активировать безопасный режим загрузки системы, изменить настройки загрузки, открыть встроенные утилиты для диагностики, убрать неиспользуемые ОС из меню загрузки.
  • regedit – редактор реестра, позволяющего настроить поведение системы путем изменения сведения в системном реестре.
  • msinfo32 – просмотр сведений о системе: объем оперативной памяти, число ядер центрального процессора, версию операционной системы и информацию о других компонентах материнской платы.

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

  • sdclt – команда запускает параметры, через которые создаются резервные копии и точки восстановления Windows 10.
  • mmc – открытие утилиты «Консоль управления», через которую осуществляется работа с программами для анализа состояния ПК, а также различных компонентов системы. Предназначена преимущественно для системных администраторов и функционирует не только с оснастками от компании Microsoft, но и от сторонних разработчиков.
  • mrt – системное средство, предназначенное для базовой защиты операционной системы Windows от вредоносного программного обеспечения, которое может быть на ПК.

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

  • control admintools – администрирование;
  • services.msc – службы Windows 10;
  • diskmgmt.msc – управление жесткими дисками;
  • netplwiz – управление учетными записями пользователей;
  • taskmgr – диспетчер задач;
  • devmgmt.msc – диспетчер устройств;
  • taskschd.msc – планировщик заданий;
  • firewall.cpl – брандмауэр Защитника Windows;
  • logoff – выход из системы;
  • dfrgui – дефрагментация диска;
  • fonts – папка со шрифтами;
  • wusa – обновления системы.

Даже для перезагрузки и завершения работы системы предусмотрены специальные команды, позволяющие закрыть все работающие процессы корректно и не потерять данные при возникновении сбоя в работе. Для перезагрузки Windows 10 необходимо ввести команду shutdown/r, а для завершения работы – shutdown/s.

Создание игрового сервера Steam

Для Counter-Strike и других игр Steam вам понадобится игровой сервер Steam. Однако создание игрового сервера Steam немного отличается. Я использовал машину с Ubuntu 16.04 LTS. Хотя в сообщении сообщества Steam предлагается создать другую учетную запись пользователя для использования в качестве сервера Steam, я просто использовал свою учетную запись пользователя Ubuntu по умолчанию.

SteamCMD

Утилита SteamCMD позволяет вам запускать сервер Steam. Этот инструмент загружает и устанавливает выделенные серверы для игр Steam. Чтобы загрузить установщик SteamCMD, вставьте его в командную строку:

Убедитесь, что вы находитесь в вашем каталоге steamcmd. Как только вы перешли в этот каталог, запустите:

Установочный скрипт и обновление выполнятся. После этого попробуйте войти в систему. Вы можете просто ввести:

Вы должны увидеть сообщение о том, что вы вошли в Steam Public анонимно.

Подключение к серверам

Хотя SteamCMD установлен, нам все равно нужно добавить выделенные серверы. Однако есть несколько тонкостей. А именно, если Steam предоставляет выделенный сервер и он бесплатный, тогда анонимный вход в систему вполне подойдет. Но некоторые серверы требуют, чтобы вы вошли в систему с учетной записью Steam.

Например, Team Fortress 2 можно сыграть таким образом. Не играл в Team Fortress или давно? Ну, может быть, вам нужно вернуться к TF2 . Тем не менее, если Steam предлагает выделенный сервер и это не бесплатная услуга, вы должны войти в систему с учетной записью Steam. Это как будто вы используете клиент Steam. Серверы Counter-Strike должны быть настроены таким образом.

Steam назначает идентификаторы приложений для клиентов и серверов.

Counter-Strike Source

  • Клиентский AppID: 240
  • AppID сервера: 232330

Team Fortress 2

  • Клиентский AppID: 440
  • AppID сервера: 232250

Но что мы на самом деле делаем с этой информацией? Нужно зайти в выделенные папки. Поэтому для сервера Team Fortress 2 путь по умолчанию будет

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

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

Однако, если вам необходимо использовать Steam ID, вместо этого используйте:

Поэтому, чтобы установить сервер Team Fortress 2 , введите его в командной строке:

Некоторые конфигурации могут потребоваться в зависимости от вашей настройки. Вы можете прочитать больше об этом здесь . Чтобы запустить игровой сервер, перейдите в соответствующую папку и запустите ее. Мы рассмотрим пример Team Fortress 2 :

Другие Методы

Хотя предыдущие примеры охватывают игры Steam и Minecraft , это не единственные игры, для которых вы, возможно, захотите запустить сервер. И это не единственные методы создания игрового сервера в Linux. GameServers.com предлагает солидное решение. Есть платные версии, но я попробовал бесплатный Counter-Strike: Source сервер. Проверьте бесплатные серверы, доступные здесь.

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

Наконец, Linux Game Server Managers предоставляет отличное решение. Это фантастический инструмент, который совместим с множеством дистрибутивов. LGSM может похвастаться более чем 50 выделенными серверами. Плюс, это с открытым исходным кодом. Инструмент командной строки позволяет быстро развертывать выделенные игровые серверы в Linux. Проверьте демо ниже:

Кредит изображения: Aperture75 через Shutterstock.com

Как быстро открыть папку в новом окне

Периодически возникает ситуация, когда требуется открыть одну из папок, видимых в Проводнике в новом окне. Это может потребоваться, чтобы например, сравнить содержимое двух папок или выполнить операции методом «drag-and-drop». Так же мы расскажем, как открыть командную строку сразу с адресом текущей папки и простой способ быстро скопировать полный путь до файла или папки.

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

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

chown

Команда chown (change owner) позволяет менять владельца и группу владельца:

  • Файлов.
  • Каталогов.
  • Ссылок.

Основные опции команды chown:

  • -c — детальный вывод всех выполняемых изменений;
  • -f — минимум информации (убирает ошибки из выдачи);
  • -h — изменять права символических ссылок, а файлы к которым они ведут не трогать;
  • -R — рекурсивная обработка всех подкаталогов;
  • -L — переходить по всем символическим ссылкам на директории.

Изменить владельца папки ex1 на user:

Изменить на владельца user и группу users:

Чтобы изменения применялись не только к данному каталогу, но и всем подкаталогам внутри, необходимо добавить опцию -R:

Команды Терминала для улучшения продуктивности

find

  • Заменяет: Spotlight
  • Почему лучше: работает быстрее, осуществляет поиск и по системным папкам (тогда как Spotlight в них не ищет или плохо индексирует их содержимое).

Синтаксис find состоит из четырех частей:

1. find;

2. путь к директории, в которой вы хотите искать информацию (например, /Applications);

3. опции (например, -name дает find возможность искать файлы, которые подходят к заданному названию);

4. непосредственно сам поисковый запрос (например, Google Chrome).

Вот как выглядит вся команда в целом:

Примечание: «звездочки» (*) указывают на то, что используется regex (регулярные выражения).

du

  • Заменяет: ⌘Cmd + I, т.е. команды для отображения информации;
  • Почему лучше: может показать сразу несколько папок за один раз, и обычно выполняется быстрее.

du – это сокращение от «disk usage». Команда поможет быстро узнать размер конкретного файла или папки, или даже списка файлов внутри папки.

Лучшие опции для du:

-d («глубина», или depth): если за этой буквой стоит цифра, то find ограничит поиск по директории соответствующим количеством уровней. Например, если вы отдадите вашему Mac команду du:

Терминал выдаст вам информацию только об общем «весе» папок и файлов в папке Applications, без данных о размере подпапок, вложенных в эти папки.

-h (human readable, или «человеко-читаемые»). Выводит размеры файлов в привычных людям величинах – K (килобайтах), М (мегабайтах) или G (гигабайтах).

Команда du в действии:

ПО ТЕМЕ: Возможности клавиши ⌥Option (Alt) на Mac (macOS), о которых вы могли не знать.

mv

  • Заменяет: ручной перенос папок и файлов в нужное место.
  • Почему лучше: быстрее и не требует много ручного труда.

Синтаксис mv очень прост – старый путь меняется на новый:

mv <old file path> <new file path>.

Пример:

Эта команда переносит file1 из папки Документы на Рабочий стол.

ls

  • Заменяет: ⌘Cmd + I (показать информацию).
  • Почему лучше: быстрее, умеет отображать информацию о нескольким файлах сразу и имеет богатую палитру настроек.

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

Лучшие опции для ls:

-l – отображает права для каждого файла в папке, время последнего изменения, владельца файла и его (файла) название.

-a – показывает все файлы в папке, включая скрытые (отличный вариант для библиотеки пользователя, которая в macOS по умолчанию скрыта).

Вот как всё работает:

mkdir

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

Создает новые папки в мгновение ока.

Пример:

rm

  • Заменяет: процедуру отправки файлов в Корзину и её очистки;
  • Почему лучше: быстрее, плюс удаляются даже те файлы, от которых обычно не получается избавиться с помощью Корзины.

Эта команда раз и навсегда удаляет абсолютно любой файл, который вы поместите в команду. Что, разумеется, требует повышенного внимания – в отличие от Корзины, rm не будет спрашивать «а Вы точно уверены?». Предполагается, что вы знаете, что делаете…

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

Пример:

Системная информация

Что бы узнать время и дату наберите:

Так же можно посмотреть календарь на текущий месяц, для этого нужно ввести команду:

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

Команда “whoami” выведет имя пользователя под которым вы зашли в систему:

Что бы узнать информацию о ядре наберите:

Что бы узнать информацию о процессоре наберите “cat /proc/cpuinfo”, для информации об оперативной памяти “cat /proc/meminfo”

А вот что бы узнать информацию об использовании жестких дисков наберите:

Команда “free” выдаст вам использование параметров оперативной памяти и раздела swap:

Что бы узнать расположение программы введите команду “whereis и название программы”:

Получение информации о системе

df

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

df 

df -h
— вывод отчета в удобном виде.

du

— отображение дискового пространства, занятого файлами и каталогами.

du 

du -ah /home/janedoe
— отображение размера файлов и каталогов.

du -sh /home/janedoe
— отображение общего размера всех файлов и каталогов.

du -h -d0 *.txt /home/janedoe
— отображение размера только текстовых файлов без заглядывания в подкаталоги (-d0).

du —time -h /home/janedoe
— дополнить вывод временем последнего изменения файла.

free

— отображение занятого пространства оперативной памяти.

free 

free -mt
— занятая оперативная память в мегабайтах со строкой Total.

free -th -s1
— отображение результата каждую секунду.

watch free
— отображение занятой оперативной памяти в реальном времени.

hostname
— имя текущего хоста.

iostat

— статистика использования CPU и операций ввода/вывода.

iostat 

iostat -m
— выводить статистику в мегабайтах.

iostat -N
— вывод имен устройств в статистике.

iostat -p sda
— вывод статистики для группы блочных устройств.

iostat -x
— вывод расширенной статистики.

screenfetch
— информация о системе (не везде предустановлена).

uptime
— время прошедшее после запуска системы.

uname

— информация об ОС.

uname 

uname -a
— полная информация об ОС.

vmstat

— информация об использовании виртуальной памяти.

vmstat 

vmstat 2
— обновление данных каждые 2 секунды.

vmstat -d
— статистика использования дисков.

Установка, обновление и удаление пакетов

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

apt (в Debian, Ubuntu и им подобных)

sudo apt-get install название пакета — устанавливает пакет из подключенных репозиториев. Ищется по названию и версии.

sudo apt remove название пакета — удаляет из системы установленный пакет.

sudo apt purge название пакета — удаляет установленный пакет и вместе с ним уничтожает все зависимые данные. От приложения не остается никаких следов. Такой вариант подходит, когда нужна полная переустановка пакета «с нуля».

sudo apt autoremove — автоматически выполняет уборку среди установленных пакетов, убирая ненужные остатки кода.

sudo apt-add-repository адрес репозитория — подключает к системе дополнительный репозиторий с пакетами, не вошедшими в базу репозиториев по умолчанию. Требуется для установки некоторых редких open-source-приложений.

sudo apt-get update — обновляет информацию о пакетах, имеющихся в системе и тех, что хранятся в подключенных репозиториях.

sudo apt-upgrade — обновляет версии установленных пакетов до самых свежих, доступных в подключенных репозиториях.

dnf (в Red Hat Linux, CentOS, Fedora)

sudo dnf install название пакета — устанавливает программу на выбор.

sudo dnf config-manager –add-repo адрес репозитория — подключает к системе дополнительный репозиторий.

sudo dnf upgrade — обновляет версии установленных пакетов до самых свежих, доступных в подключенных репозиториях.

sudo dnf remove название пакета — стирает с жесткого диска имеющийся в системе пакет.

sudo dnf autoremove — разыскивает мусор среди имеющихся пакетов и в автоматическом режиме вычищает его.

pacman (в Arch Linux и Manjaro)

sudo pacman -S название пакета — устанавливает пакет на выбор.

sudo yaourt -S название пакета — устанавливает пакет на выбор из репозитория AUR.

sudo pacman -Sy — обновляет информацию о пакетах, имеющихся в системе и тех, что хранятся в подключенных репозиториях.

sudo pacman -Syu — обновляет версии установленных пакетов до самых свежих, доступных в подключенных репозиториях.

sudo pacman -R название пакета — стирает с жесткого диска имеющийся в системе пакет.

sudo pacman -Rs название пакета — стирает не только установленное приложение, но и все зависимые от него элементы.

Команды Linux, Связанные С Передачей Файлов

Эти команды используются для копирования файлов из одной системы в другую систему

87. scp

SCP — это программа безопасного копирования для передачи файлов или каталогов между хостами Linux в сети. SCP использует протокол ssh для передачи данных.

Пример того как локальный файл ‘examples.txt» скопировать на удаленный хост.

88. rsync

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

Использование ls в Linux

Как вы уже поняли, ls — это сокращение от list, эта команда представляет из себя аналог команды dir для Linux. Самый простой способ использовать команду, запустить ее без параметров и посмотреть содержимое текущей папки:

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

Или папки /bin:

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

Тут вывод уже разделен на отдельные колонки, в первой колонке указаны права доступа к файлу в формате владелец группа остальные. Следующая колонка — это тип файла или папки, дальше владелец и группа, затем размер, дата создания и последний параметр — имя. Если вы еще хотите знать кто создал файл, можно использовать опцию author:

Колонка создателя будет добавлена после группы. Дальше размер. Он выводится в байтах, килобайтах или еще в чем-то и нам не совсем понятно что там происходит, поэтому добавьте опцию -h чтобы выводить размер в более удобном виде:

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

Если вы хотите видеть скрытые файлы, а в домашней папке их просто море, то используйте опцию -a:

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

Теперь нас будет интересовать сортировка. Сначала отсортируем файлы по размеру:

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

С помощью опции -r мы вывели файлы в обратном порядке. Теперь отсортируем по алфавиту:

Или сортируем по времени последней модификации:

Обратите внимание на колонку времени, действительно, самые новые файлы будут вверху списка. Если вы хотите посмотреть какие метки SELinux присвоены файлу, необходимо использовать опцию -Z:

Но это возможно только в системах, где установлена надстройка SELinux. Если вы хотите рекурсивно вывести содержимое всех папок, используйте опцию -R:

Если же вам нужно список папок и файлов в директории через запятую, что можно использовать -m:

Работа с ssh

Что бы подключится по ssh нужно указать имя пользователя и ip адрес на который вы подключаетесь. Например:

Если у вас в настройках ssh config изменен стандартный порт (22), то при подключении можно указать на каком порту должно происходить подключение параметром “-p”. Например, порт будет 2323:

Что бы добавить ключ на сервер, введите команду “ssh-copy-id “. Это позволит вам подключаться по ключу минуя пароль.

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

Прочее

Это бонус для развлечения. Шутка от разработчиков Linux, не несущая пользы.

cowsay — заставляет цифровую корову повторить текст, который вы ей передали. Как echo, только от лица коровы.

fortune | cowsay — награждает корову философским интеллектом и дает ей возможность делиться с вами умными цитатами.

cowsay -l — демонстрирует всех животных, которые могут с вами пообщаться в том случае, если вам почему-то не приглянулась корова.

sudo название менеджера пакетов install fortunes fortune-mod fortunes-min fortunes-ru — учит животных говорить на русском.

Здесь, пожалуй, и остановимся. Ключевые SSH-команды сервера мы рассмотрели. Их хватит для навигации и выполнения базовых операций. Остальное уже на ваших плечах и полностью зависит от проекта, над которым вы работаете.

Проверьте наличие проблем с жестким диском или SSD в Linux

И что говорить о дисковых накопителях, которые позволяют нам хранить как операционную систему как таковую, так и программы, которые мы используем ежедневно. Ко всему этому мы должны добавить наши собственные файлы, которые мы создаем с течением времени и которые мы храним в этих модулях. Следовательно, будь то жесткий диск или SSD , забота об этих компонентах не менее важна. Чтобы узнать его статус и возможные проблемы, которые мы можем найти здесь, мы также можем использовать определенные программы, как мы увидим ниже.

Smartmontools, контролирует данные SMART с жесткого диска и SSD

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

Для этого нам нужно использовать только ту же команду:

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

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

GSmartControl, проверьте состояние ваших жестких дисков и SSD

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

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

AVAILABILITY top

       The whereis command is part of the util-linux package which can
       be downloaded from Linux Kernel Archive
       <https://www.kernel.org/pub/linux/utils/util-linux/>. This page
       is part of the util-linux (a random collection of Linux
       utilities) project. Information about the project can be found at
       ⟨https://www.kernel.org/pub/linux/utils/util-linux/⟩. If you have
       a bug report for this manual page, send it to
       [email protected]. This page was obtained from the
       project's upstream Git repository
       ⟨git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git⟩ on
       2021-08-27. (At that time, the date of the most recent commit
       that was found in the repository was 2021-08-24.) If you discover
       any rendering problems in this HTML version of the page, or you
       believe there is a better or more up-to-date source for the page,
       or you have corrections or improvements to the information in
       this COLOPHON (which is not part of the original manual page),
       send a mail to [email protected]

util-linux 2.37.85-637cc       2021-06-17                     WHEREIS(1)

Владение файлами и права доступа

Команда chmod

Команда chmod (от англ. «change mode») позволяет изменить права доступа к файлам. Она работает в двух режимах: символьном и числовом.

При использовании числового режима вы можете установить разрешения для владельца, группы и всех остальных при помощи заданного набора чисел. Разрешения на запись, чтение и выполнение имеют следующие числовые значения:

    (чтение) =

    (запись) =

    (выполнение) =

   нет разрешений =

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

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

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

Команда chown

Команда chown (от англ. «change owner») позволяет изменить владельца и группу заданного файла, каталога или символьной ссылки.

Чтобы изменить владельца файла, достаточно выполнить:

Чтобы изменить как владельца, так и группу файла, вызовите:

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

Команда sudo

Команда sudo (от англ. «Substitute User and do« = «подменить пользователя и выполнить») позволяет запускать программы от имени другого пользователя (по умолчанию, пользователя root). Использование команды , вместо входа в систему под учетной записью пользователя root, более безопасно, поскольку вы можете предоставить ограниченные административные привилегии отдельным пользователям, не зная пароля пользователя root.

Чтобы использовать , просто добавьте префикс перед именем команды:

Опции whereis

Вот основные опции whereis:

  • -b — поиск бинарных файлов.
  • -B <папки> — ведет поиск исключительно в указанных пользователем директориях.-m — поиск мануалов.
  • -M <папки> — ищет справочные файлы в тех директориях, которые выбрал пользователь.-s — поиск исходников.
  • -S <папки> — будет искать исходные файлы только там, где нужно пользователю
  • -u — запрашивает вывод тех команд, у которых отсутствует указанный тип файлов либо имеется в наличии два и больше таковых. К примеру, whereis -m -u* пригодится для поиска команд без мануала или с двумя мануалами.
  • -f — должна завершать перечень директорий, поскольку сигнализирует о том, что набор символов, идущий сразу после нее, является названием файла.
  • -l — показывает каталоги, в которых по умолчанию происходит поиск.

Вместо <папки> следует прописывать путь к требуемой директории.

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

Общий синтаксис команды find, который вы можете найти в справочном руководстве, может показаться не совсем простым, поэтому я приведу более удобный для восприятия:

Путь

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

Опции

Опции команды find указываются, начиная с символа «-», за которым следует название опции. Рассмотрим основные опции.

-depth (или -d) Поиск в подкаталогах перед поиском в самом каталоге.
-L При поиске следовать по символическим ссылкам.
-maxdepth N При поиске проверять не более чем N вложенных уровней каталогов.
-mindepth N Не проверять вложенные каталоги уровня N и меньше.
-mount Не искать в каталогах других файловых систем.

Критерии поиска

У команды find может быть несколько критериев поиска (их также называют tests). Каждый критерий представляет собой определенное условие проверки, которое возвращает либо true либо false. Это можно сравнить с условиями оператора if в программировании. В процессе обработки очередного файла команда find по очереди проверяет каждый критерий, и если очередной критерий возвращает false, тогда команда find переходит к следующему файлу. Критериев у команды find довольно много, мы рассмотрим только некоторые из них.

-atime N Последний раз к файлу обращались N дней назад.
-mtime N Последнее изменение файла было N дней назад.
-name шаблон Имя файла (шаблон имени) без указания пути. Рекомендуется всегда заключать шаблон в кавычки.
-newer другой_файл Файл был изменен позже, чем другой_файл.
-size N Размер файла равен N блокам, если указано +N, тогда размер файла больше N, -N — меньше. Символ после N означает размер блока. b — 512 байт, с — байт, w — 2 байта, k — килобайт, M — мегабайт, G — гигабайт.
-type C Файл типа C. Наиболее часто используемые значения для С: d — каталог, f — файл.
-user Имя_пользователя Файл принадлежит пользователю с именем Имя_пользователя.

Примеры использования команды find с использованием критериев

Найти в текущем каталоге обычные файлы (не каталоги), имя которых начинается с символа «~».

Найти в текущем каталоге файлы, измененные позже, чем файл file.bak.

Операторы

Критерии можно объединять, используя операторы. Ниже приведены операторы в порядке убывания их приоритета.

Короткая форма оператора Длинная форма Описание
! критерий -not Отрицание (возвращает true, если критерий false)
критерий1-a критерий2 -and Оператор И (true, если критерий1 и критерий2 true)
критерий1-o критерий2 -or Оператор ИЛИ (true, если критерий1 или критерий2 true)

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

Примеры использования команды find с использованием операторов

Найти в текущем каталоге файлы, начинающиеся с символа «~» или c «temp» и являющиеся именно обычными файлами (-type f), а не каталогами.

Найти в текущем каталоге (не обрабатывая подкаталоги — -maxdeph 1) обычные файлы (-file f) размером больше 600 мегабайт и менее 1 гигабайта (-size) или файлы имя которых заканчивающиется на «.mpeg» (-name).

Действия над файлами

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

-exec команда \;
Выполнить команду

Обратите внимание, что после команды ставится обратный слеш и точка с запятой.
-execdir команда \;
То же самое что и exec, но команда вызывается из подкаталога, содержащего текущий файл.
-ok команда \;
То же самое, что и exec, но перед обработкой очередного файла будет выводится запрос на выполнение команды.
-okdir команда \;
То же что ok для execdir.
-print
Вывод имени файла на экран.
-ls
Выполнение команды ls -dils над текущим файлом.. В выполняемых командах вы можете использовать параметр {} в качестве аргумента, который заменяется путем к текущему файлу

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

Примеры использования команды find с использованием действий

Найти в текущем каталоге обычные файлы размером больше 1000 байт и выполнить над ними команду ls -dils (действие ls).

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

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: