The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Как сбить нескострочный выхлоп в одну строку"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (Shell скрипты)
Изначальное сообщение [ Отслеживать ]

"Как сбить нескострочный выхлоп в одну строку"  +/
Сообщение от Jinx on 11-Янв-12, 19:00 
Предположим что я хочу взять ДНСы с resolv.conf

# cat /etc/resolv.conf | awk '{print $2}'
8.8.8.8
8.8.4.4

но вывести все это в таком виде:

8.8.8.8 8.8.4.4

А еще лучше:

8.8.8.8, 8.8.4.4

Как сбить вывод ката (и не только) в одну строку? Помогите начинающему скриптеру.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Как сбить нескострочный выхлоп в одну строку"  +/
Сообщение от кегна on 11-Янв-12, 20:44 
>[оверквотинг удален]
> но вывести все это в таком виде:
>
 
> 8.8.8.8 8.8.4.4
>

> А еще лучше:
>
 
> 8.8.8.8, 8.8.4.4
>

> Как сбить вывод ката (и не только) в одну строку? Помогите начинающему
> скриптеру.

cat /etc/resolv.conf | awk '{print $2}' | xargs

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Как сбить нескострочный выхлоп в одну строку"  +/
Сообщение от кегна on 11-Янв-12, 20:56 
>[оверквотинг удален]
>> но вывести все это в таком виде:
>>
 
>> 8.8.8.8 8.8.4.4
>>

>> А еще лучше:
>>
 
>> 8.8.8.8, 8.8.4.4
>>

>> Как сбить вывод ката (и не только) в одну строку? Помогите начинающему
>> скриптеру.

$cat /etc/resolv.conf | awk '{print $2}' | xargs
8.8.8.8 8.8.4.4

$cat /etc/resolv.conf | awk '{print $2}' | xargs | sed 's/\ /,\ /g'
8.8.8.8, 8.8.4.4

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Как сбить нескострочный выхлоп в одну строку"  +/
Сообщение от Jinx on 12-Янв-12, 11:54 
> $cat /etc/resolv.conf | awk '{print $2}' | xargs
> 8.8.8.8 8.8.4.4
> $cat /etc/resolv.conf | awk '{print $2}' | xargs | sed 's/\ /,\ /g'
> 8.8.8.8, 8.8.4.4

То что нужно. Большое спасибо!
Вот как все просто реализуется - а я вот начал уже цикл писать... Век живи - век учись.
Ушел штудировать маны по xargs и sed.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Как сбить нескострочный выхлоп в одну строку"  +/
Сообщение от cryo (ok) on 12-Янв-12, 18:43 
>> $cat /etc/resolv.conf | awk '{print $2}' | xargs
>> 8.8.8.8 8.8.4.4
>> $cat /etc/resolv.conf | awk '{print $2}' | xargs | sed 's/\ /,\ /g'
>> 8.8.8.8, 8.8.4.4
> То что нужно. Большое спасибо!
> Вот как все просто реализуется - а я вот начал уже цикл
> писать... Век живи - век учись.
> Ушел штудировать маны по xargs и sed.

заодно и man tr зацепите :)

$cat /etc/resolv.conf | awk '{print $2}' | tr '\n' ' '
8.8.8.8 8.8.4.4
$cat /etc/resolv.conf | awk '{print $2}' | tr '\n' ' ' | sed 's/\ /,\ /g'
8.8.8.8, 8.8.4.4

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Как сбить нескострочный выхлоп в одну строку"  +/
Сообщение от Andrey Mitrofanov on 13-Янв-12, 19:16 
|paste -sd,
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Как сбить нескострочный выхлоп в одну строку"  +/
Сообщение от Andrey Mitrofanov on 13-Янв-12, 19:22 
> # cat /etc/resolv.conf | awk '{print $2}'

|awk '$1=="server"{s=(s?s",":"")$2}END{print s}'
|awk '$1=="server"{printf"%s%s",(f?",":""),$2;f=1}END{print""}'

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "Как сбить нескострочный выхлоп в одну строку"  +/
Сообщение от кегна on 13-Янв-12, 21:25 
>> # cat /etc/resolv.conf | awk '{print $2}'
>  |awk '$1=="server"{s=(s?s",":"")$2}END{print s}'
>  |awk '$1=="server"{printf"%s%s",(f?",":""),$2;f=1}END{print""}'

| sed ':a;N;$!ba;s/\n/\ /g'
| sed ':a;N;$!ba;s/\n/,\ /g'

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Как сбить нескострочный выхлоп в одну строку"  +/
Сообщение от pavlinux (ok) on 14-Янв-12, 18:23 
> А еще лучше:
> 8.8.8.8, 8.8.4.4

cat /etc/resolv.conf | awk '{printf $2", "}'

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру