IT News: Digital Camera, OS, Laptop, Smartphone, Smart TV, Sound...

The Author's Project by Valeri N.Kravchuk
Сайт проверен Dr.Web
Меню сайта
  • Главная страница
  • Информация о сайте
  • Дневник
  • Каталог файлов
  • Обратная связь
  • Каталог сайтов
  • FAQ
  • Доска объявлений
  • Форум
  • Фотоальбом
  • Категории раздела
    Автомобильные гаджеты, ремонт... [220]
    Безопасность IT [484]
    Блоки питания, Power Banks, зарядки... [490]
    Видеорегистраторы [220]
    Гаджеты для спорта и здоровья... [190]
    Гаджеты, аксессуары... [625]
    Измерительная техника, инструменты [449]
    Накопители данных [226]
    Нетбуки, Ноутбуки, Ультрабуки [680]
    Мультиварки, блендеры и не только... [158]
    Планшеты [758]
    Радар-детекторы [26]
    Роботы-пылесосы [37]
    Своими руками [357]
    Сети, сетевые технологии, оборудование... [269]
    Смартфоны [4966]
    Фотокамеры, объективы, искусство фотографии.. [543]
    Умный дом [47]
    Электронные книги [96]
    CB, LPD, PMR- связь... [171]
    DECT, IP-телефоны [18]
    Drones, boats, cars... [108]
    electric cars [35]
    GPS-навигаторы, трекеры... [51]
    Linux и не только [4380]
    mini computers и не только... [409]
    News IT, Это интересно, ликбез... [1113]
    Smart TV, UltraHD, приставки, проекторы... [414]
    Smart Watch [263]
    Sound: наушники, плееры, усилители... [616]
    Windows 10... [298]
    Windows 11 [28]
    Погода

  • Метеорадар БРЕСТ
  • Погода в Бресте от www.yr.no

    Яндекс.Погода БРЕСТ

  • Интересные ссылки

    COMPIZOMANIA

    Наш опрос
    Оцените мой сайт
    Всего ответов: 1340
    Статистика
    Анализ веб сайтов

    Яндекс.Метрика

    Рейтинг@Mail.ru Яндекс цитирования

    Russian America Top. Рейтинг ресурсов Русской Америки.

    eXTReMe Tracker

    Правильный CSS!


    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Locations of visitors to this page
    Форма входа
    Главная » 2017 » Март » 5 » Дополнительные инструменты системного администратора из пакета Moreutils
    16:57
    Дополнительные инструменты системного администратора из пакета Moreutils

    Дополнительные инструменты системного администратора из пакета Moreutils

    Оригинал: Moreutils For Your Linux Shell Tool Set
    Автор: Paul Brown
    Дата публикации: 4 октября 2016 г.
    Перевод: А.Панин
    Дата перевода: 16 января 2017 г.

    Дополнительные инструменты системного администратора из пакета Moreutils

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

    У меня есть испаноязычный вариант полезной книги Стивена Коффина под названием "Unix System V Release 4: The Complete Reference". Я могу поспорить на последний доллар, что если вы откроете любую из ее 700+ страниц и попробуете исполнить приведенные на ней команды в современном дистрибутиве Linux, они будут корректно работать. Ну, конечно же, исключением будут команды, предназначенные для работы с телетайпами и ленточными накопителями.

    Исходя из всего вышесказанного, вы можете подумать, что интерфейс командной строки *NIX практически не изменялся с начала 1990-х годов. Это не совсем верно.

    В качестве примера можно рассмотреть коллекцию утилит Moreutils. Вы можете установить ее в большинстве дистрибутивов Linux с помощью стандартного менеджера пакетов программного обеспечения. В дистрибутиве Ubuntu, а также основанных на Ubuntu дистрибутивах для этого достаточно выполнить команду:

    sudo apt install moreutils
    

    В дистрибутиве Debian для этой цели лучше использовать следующую последовательность команд:

    su
    apt-get install moreutils
    

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

    yum install moreutils
    

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

    Новые инструменты

    Пакет Moreutils предоставляет в ваше распоряжение набор новых инструментов, которые не входят в комплект поставки дистрибутивов Linux, но, скорее всего, заслуживают этого. К примеру, утилита vidir позволяет редактировать содержимое директорий и переименовывать файлы с помощью интерфейса текстового редактора. Несмотря на название, утилита vidir позволяет работать с любым выбранным пользователем текстовым редактором, поэтому в том случае, если вы выбрали vi(m), то, она, конечно же, предложит использовать интерфейс vim (Рисунок 1); но если вы выбрали nano или emacs, она предложит использовать интерфейс nano или emacs (Рисунок 2).

    Утилита vim предлагает использовать интерфейс выбранного пользователем текстового редактора, будь то vim(m)...

    Рисунок 1. Утилита vidir предлагает использовать интерфейс выбранного пользователем текстового редактора, будь то vim(m)...

    nano или любой другой текстовый редактор

    Рисунок 2: ...или nano или любой другой текстовый редактор

    Вы можете изменить содержимое директории с помощью команды:

    vidir ИМЯ_ДИРЕКТОРИИ
    

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

    find Pictures -iname "*.png" | vidir -
    

    Обратите внимание на символ "-". Он сообщает утилите vidir о том, что следует читать входные данные из программного канала.

    Вы можете использовать обычные комбинации клавиш текстового редактора для модификации содержимого директорий и переименования файлов. Если вы работаете с интерфейсом текстового редактора vi, вы можете использовать клавишу i для изменения имен файлов или директорий; команду d[номер_файла]d для удаления файлов или директорий - при этом вы должны помнить о том, что vidir имеет встроенный механизм защиты, не позволяющий удалять непустые директории; клавишу u для отмены изменений и так далее.

    Чтение всех данных: sponge

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

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

    Вы должны сохранить его под именем knights.txt.

    Что бы вы сделали, если бы вам понадобилось отсортировать строки из файла в алфавитном порядке? Вы наверняка попытались бы воспользоваться аналогичной командой:

    sort knights.txt > knights_sorted.txt; rm knights.txt; mv knights_sorted.txt knights.txt
    

    Ведь если бы вы использовали следующую команду:

    sort knights.txt > knights.txt
    

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

    sort knights.txt | sponge knight.txt
    

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

    Благодаря существованию утилиты sponge вы можете читать содержимое текстового файла и осуществлять обработку его содержимого с помощью цепочки таких утилит, как sort, unique, sed, grep и tr. Утилита sponge будет самостоятельно читать все данные из файла, дожидаться окончания процесса их обработки, после чего записывать все результирующие данные обратно в файл.

    В ходе разговора о данной утилите просто нельзя не упомянуть об утилите pee. Несмотря на ее имя, она не имеет ничего общего с биологическими жидкостями. Фактически ее имя является комбинацией слов pipe (программный канал, использующийся для передачи вывода одной команды на вход другой в системах *NIX) и tee (стандартная для *NIX утилита с интерфейсом командной строки).

    В отличие от утилиты tee, перенаправляющей вывод команд в файлы (команда cat knights.txt | tee k1 k2 k3 позволяет создать файлы с именами k1, k2 и k3, содержащие данные из файла knights.txt), утилита pee организует программные каналы для передачи данных на входы команд из переданного списка:

    В приведенном выше примере оригинальное неупорядоченное содержимое файла knights.txt передается сначала утилите sort для упорядочивания, после чего утилите wc (word count), которая при использовании параметра -l осуществляет подсчет количества строк (13) и, наконец, утилите grep, которая использует простое регулярное выражение для вывода лишь тех строк, которые начинаются с заглавной буквы "G".

    Программные каналы

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

    cat knights.txt | pee sort "wc -l" "grep - -e ^G.*" | vipe | unique
    

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

    Круто, не так ли?

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

    В пакете Moreutils находится огромное количество других полезных инструментов. Утилита combine объединяет строки из двух файлов в соответствии с указанной логической операцией; ts добавляет переданную пользователем, читаемую человеком метку времени к каждой строке файла; ifdata максимально упрощает получение данных от сетевого интерфейса, что очень удобно для создания сценариев и так далее. Обратитесь к веб-странице проекта и страницам руководств каждой из утилит для того, чтобы разобраться, как они работают.

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

    Пакет Moreutils постоянно эволюционирует; время от времени разработчики добавляют в него новые инструменты. Лично мне интересно следить за тем, какие инструменты будут добавлены в этот пакет в будущем.

     

    http://rus-linux.net/MyLDP/admin/moreutils-shell-toolset.html

    Категория: Linux и не только | Просмотров: 490 | Добавил: laptop | Рейтинг: 0.0/0
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]
    Волк слабее льва и тигра, но в цирке волк не выступает!
    Волк слабее льва и тигра, но в цирке волк не выступает!
    Волк - единственный из зверей, который может пойти в бой на более сильного противника.
    Если же он проиграл бой, то до последнего вздоха смотрит в глаза противника. После этого умирает...

    Праздники сегодня

    Поиск
    Календарь
    «  Март 2017  »
    ПнВтСрЧтПтСбВс
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031
    Архив записей
    Друзья сайта
  • Официальный блог
  • JEEP - the best! Mercedes - the best! Автомобильный портал города Бреста: технические характеристики с фото, авторынок, автоспорт...
    Наша кнопка
    IT новости с моего лаптопа...

    Внимание!
    Администратор сайта laptop.ucoz.ru не несет ответственности за содержание рекламных объявлений. Все используемые на сайте зарегистрированные товарные знаки принадлежат своим законным владельцам! Используемая со сторонних источников информация публикуется с обязательными ссылками на эти источники.
    Copyright Valeri N.Kravchuk © 2007-2024