Команда uniq є дуже потужною командою, яка використовується з командою sort, особливо для аналізу файлів журналу. Це дозволяє сортувати та відображати записи, видаляючи дублікати.
Щоб проілюструвати, як працює команда uniq, скористаємося файлом firstnames.txt, який містить список імен:
antoine
xavier
steven
patrick
xavier
antoine
antoine
steven
Примітка
uniq вимагає, щоб вхідний файл був відсортований перед запуском, оскільки він порівнює лише послідовні рядки.
Без аргументів команда uniq не відображатиме ідентичні рядки, які слідують один за одним у файлі firstnames.txt:
$sortfirstnames.txt|uniq
antoine
patrick
steven
xavier
Щоб відобразити лише ті рядки, які з’являються лише один раз, скористайтеся параметром -u:
$sortfirstnames.txt|uniq-u
patrick
І навпаки, щоб відобразити лише ті рядки, які з’являються у файлі щонайменше двічі, скористайтеся параметром -d:
$sortfirstnames.txt|uniq-d
antoine
steven
xavier
Щоб просто видалити рядки, які з’являються лише один раз, скористайтеся опцією -D:
$sortfirstnames.txt|uniq-D
antoine
antoine
antoine
steven
steven
xavier
xavier
Нарешті, щоб підрахувати кількість входжень кожного рядка, використовуйте параметр -c:
Команда xargs дозволяє створювати та виконувати командні рядки зі стандартного введення.
Команда xargs зчитує зі стандартного вводу аргументи, розділені пробілами або переводами рядків, і виконує команду (за замовчуванням /bin/echo) один або кілька разів, використовуючи початкові аргументи, за якими йдуть аргументи, прочитані зі стандартного введення.
Першим і найпростішим прикладом може бути наступне:
$xargs
use
of
xargs
<CTRL+D>
useofxargs
Команда xargs очікує введення зі стандартного введення stdin. Введено три рядки. Кінець введення користувача вказується в xargs послідовністю натискань клавіш Ctrl+D. Потім xargs виконує команду за замовчуванням echo, за якою слідують три аргументи, що відповідають введеним користувачам, а саме:
$echo"use""of""xargs"
useofxargs
Можна вказати команду, яку буде виконувати xargs.
У наступному прикладі xargs виконає команду ls -ld для набору папок, указаних у стандартному вводі:
У цьому випадку командою xargs потрібно примусово виконати команду find кілька разів (один раз на рядок, введений як стандартний ввід). Параметр -L із наступним цілим числом дозволяє вказати максимальну кількість записів, які потрібно обробити командою одночасно:
Особливістю команди xargs є те, що вона розміщує вхідний аргумент у кінці викликаної команди. Це дуже добре працює з наведеним вище прикладом, оскільки передані файли формуватимуть список файлів, які потрібно додати до архіву.
Використовуючи приклад команди cp, щоб скопіювати список файлів у каталозі, цей список файлів буде додано в кінці команди... але що команда cp</ code> очікує в кінці команди призначення. Щоб зробити це, скористайтеся опцією <code>-I, щоб розмістити вхідні аргументи не в кінці рядка.
Пакет yum-utils — це набір утиліт, створених для yum різними авторами, які роблять його зручнішим і потужнішим у використанні.
Примітка
Хоча yum було замінено на dnf у Rocky Linux 8, назва пакета залишилася yum-utils, хоча його також можна встановити як dnf-utils. Це класичні утиліти YUM, реалізовані як прокладки CLI поверх DNF для підтримки зворотної сумісності з yum-3.
Команда repoquery використовується для запиту пакетів у сховищі.
Приклади використання:
Відображення залежностей пакета (це може бути пакет програмного забезпечення, який було встановлено або не встановлено), еквівалентно dnf deplist <package-name>
repoquery--requires<package-name>
Відображати файли, надані встановленим пакетом (не працює для пакетів, які не встановлено), еквівалентно rpm -ql <package-name>
На відміну від назви, команда install не використовується для встановлення нових пакетів.
Ця команда поєднує копіювання файлів (cp) і створення каталогу (mkdir) із керуванням правами (chmod, chown) та інші корисні функції (наприклад, резервне копіювання).
Size - Відображає розмір файлу в байтах. Якщо це каталог, він відображає фіксовані 4096 байт, зайняті назвою каталогу.
Blocks - Відображає кількість виділених блоків. Увага, будь ласка! Розмір кожного блоку в цій команді становить 512 байт. Стандартний розмір кожного блоку в ls -ls становить 1024 байти.
Device - Номер пристрою в десятковій або шістнадцятковій системі числення.
Inode - Inode — це унікальний ідентифікаційний номер, який ядро Linux призначає файлу або каталогу.
Links - Кількість жорстких посилань. Жорсткі посилання іноді називають фізичними посиланнями.
Access - Час останнього доступу до файлів і каталогів, тобто atime у GNU/Linux.
Modify - Час останньої модифікації файлів і каталогів, тобто mtime у GNU/Linux.
Change - Востаннє властивість змінено, наприклад, ctime у GNU/Linux.
Birth - Час народження (час створення). У деяких документах він скорочується як btime або crtime. Для відображення часу створення вам потрібна файлова система та версія ядра, яка перевищує певну версію.
Для файлів:
atime – після доступу до вмісту файлу за допомогою таких команд, як cat, less, more і head, atime файл можна оновити. Будь ласка, зверніть увагу! atime файлу не оновлюється в реальному часі, і з міркувань продуктивності йому потрібно зачекати деякий час, перш ніж його можна буде відобразити. mtime – зміна вмісту файлу може оновити mtime файлу (наприклад, додавати або перезаписувати вміст файлу за допомогою переспрямування), оскільки розмір файлу є властивістю файлу, ctime також буде оновлено одночасно. ctime. Зміна власника, групи, дозволів, розміру файлу та посилань (м’яких і жорстких посилань) файлу призведе до оновлення ctime.
Для каталогів:
atime – після використання команди cd для входу в новий каталог, доступу до якого раніше не було, ви можете оновити та виправити atime цього каталогу. mtime – виконання таких операцій, як створення, видалення та перейменування файлів у цьому каталозі, оновить mtime і ctime довідника. ctime – коли дозволи, власник, група тощо каталогу змінюються, ctime каталогу буде оновлено.
Підказка
Якщо ви створюєте новий файл або каталог, його atime, mtime і ctime точно збігаються
Якщо вміст файлу змінено, mtime та ctime файлу неминуче буде оновлено.
Якщо в каталозі створюється абсолютно новий файл, atime, ctime і mtime цього каталогу буде оновлено одночасно.
Якщо mtime каталогу оновлюється, то ctime цього каталогу має бути оновлено.