Залишити вихід на одному рядку?


4

У мене справді швидке запитання до вас, хлопці. Переглянувши тут документацію та сайт, мені було цікаво, чи можна утримувати греп від виведення кожного матчу в одну лінію.

У моєму прикладі мені потрібно взяти рядок у форматі \xeb\x1a\x5e\x31\xc0\x88\x46\x07...тощо. Я використовую grep -oP "x\K(\S\S)")для отримання кожної шістнадцяткової цифри.

Вихід правильний, однак кожна відповідність є власною лінією. Це проблема, тому що мені потрібно подати цей вихід в іншу програму. Отже, чи є спосіб будь-який матч послідовно проводити без будь-якого типу прокладки?

Відповіді:


3

Ви можете передати вихід tr, наприклад,

grep -oP "x\K(\S\S)") | tr -d '\n'

Це коштує додаткового процесу, тобто робить вашу програму повільнішою. Якщо це проблема, ви можете використовувати sedабо awk.


Ідеально! працювали прекрасно. Я планував пізніше використовувати sedабо , awkале я ніколи не використовував їх , і я трохи втомився , щоб читати документи для тих , хто прямо зараз.
btf1998

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.