Ланцюжок grep, sort і wc в одній команді
Порахуйте рядки зі збігом і відфільтруйте відсортований список, поєднавши cat, grep, sort і wc.
Почати інтерактивний урокКоли grep, sort і wc вже зрозумілі окремо, справжня робота — складати їх докупи. Один рядок може витягти помилки з журналу й порахувати їх або відсортувати список користувачів і залишити лише потрібні імена. Окремої «ніндзя»-команди немає — лише конвеєри.
Порахувати рядки зі збігом
Прочитайте файл, залиште шаблон, порахуйте те, що лишилось:
Відфільтруйте файл, потім порахуйте або відсортуйте!
Скільки рядків ERROR?
grep без wc усе одно друкує рядки зі збігом. Додавайте wc -l, коли потрібне лише число.
Спочатку сортування, потім фільтр
Іноді порядок важливий ще до пошуку. Відсортуйте файл, потім залиште рядок, який вас цікавить:
printf '%s\n' 'user: guest' 'user: root' 'user: admin' > logs.txt
cat logs.txt | sort | grep 'root'
Читайте зліва направо: отримайте рядки, перетворіть їх, потім залиште або порахуйте. Якщо конвеєр виглядає неправильно, запускайте кожну частину окремо, доки вивід не збігатиметься з тим, чого очікує наступна команда.
Перевірка знань
1 / 3Що повертає cat data.log | grep 'ERROR' | wc -l?
Посилання
Ці посилання на документацію надають авторитетну інформацію про команди, використані в цій статті.