Використання каналів у командному рядку

Anonim

Однією з основних функцій командного рядка Mac OS X, Linux або будь-якої Unix є розуміння деяких основ використання каналів. По суті, pipes дозволяють направляти вивід однієї команди на вхід іншоїкоманди, дозволяючи наступній команді маніпулювати, налаштовувати або працювати з попередніми командами повернення. Знання того, як і коли використовувати канали, є життєво важливим для ефективного використання командного рядка, і це основна частина знань для користувачів терміналу.

Без подальших вступів, ось деяка інформація про канали командного рядка, що вони роблять і, що найважливіше, як використовувати канали для керування виводом командного рядка, фактично «пересилаючи» його в інше місце:

Символ вертикальної лінії виглядає як |, (це та сама клавіша, що й ваша клавіша \, якщо ви плутаєте), і вона надзвичайно корисна, коли ви працюєте в командному рядку. Ось кілька прикладів:

ls -la | більше

Це бере вивід команди списку (з довгим і всіма прапорцями) і «передає» його до команди more, дозволяючи переглядати виведені дані по одній сторінці.

ps aux | користувач grep

Ця команда отримує вихідні дані команди процесу та повідомляє лише про екземпляри процесу, що належать «користувачу»

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

Іншим поширеним використанням каналів є поєднання з «less» для покращення читабельності довгого виведення, коли використовується «cat» або щось подібне:

cat /etc/passwd | менше

Конвалі також можна використовувати в дуже просунуті способи, приймаючи вивід будь-якої команди та перенаправляючи цей вивід команди на вхід іншого командного рядка, а потім приймаючи цей вивід і перенаправляючи його ще раз, у довгий рядок команд і каналів, це може виглядати приблизно так:

"

cat /etc/OSXDaily.txt | grep osxdaily test>"

Канали також можна поєднувати з перенаправленнями та будь-якими іншими методами маніпулювання будь-чим у терміналі.

Ми відносно часто розглядаємо командний рядок Mac OS X тут, у OS X Daily, але наша нещодавня стаття Основи зручності використання командного рядка: Перенаправлення, ймовірно, також мала включати трохи про канали, тож ми тут.Більш просунуті цілі найкраще розглянути в іншому поглибленому посібнику, щоб вивчити не тільки основи, тому слідкуйте за оновленнями.

Використання каналів у командному рядку