The OpenNET Project / Index page

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

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

"Вопрос по sh"  +/
Сообщение от artemrts email(ok) on 03-Авг-09, 10:53 

  Подскажите, кто знает, можно-ли на sh выполнить следующее:

  Ммеется файл с таким содержанием

   123.234.345.456         4234724
   111.222.333.444         4354353

  Теперь вопрос, как можно записать в скрипт выборку только второго столбца в каждой строке?

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

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


1. "Вопрос по sh"  +/
Сообщение от Roman (??) on 03-Авг-09, 11:27 
>[оверквотинг удален]
>
>  Ммеется файл с таким содержанием
>
>   123.234.345.456        
>4234724
>   111.222.333.444        
>4354353
>
>  Теперь вопрос, как можно записать в скрипт выборку только второго
>столбца в каждой строке?

awk


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Вопрос по sh"  +/
Сообщение от Didko on 03-Авг-09, 11:38 
>[оверквотинг удален]
>
>  Ммеется файл с таким содержанием
>
>   123.234.345.456        
>4234724
>   111.222.333.444        
>4354353
>
>  Теперь вопрос, как можно записать в скрипт выборку только второго
>столбца в каждой строке?

man cut,
в вашем случае cat 123 | cut -d" " -f10
но лучше конечно awk.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Вопрос по sh"  +/
Сообщение от artemrts email(ok) on 03-Авг-09, 12:05 
>[оверквотинг удален]
>>4234724
>>   111.222.333.444        
>>4354353
>>
>>  Теперь вопрос, как можно записать в скрипт выборку только второго
>>столбца в каждой строке?
>
>man cut,
>в вашем случае cat 123 | cut -d" " -f10
>но лучше конечно awk.

Сенкс. Будем читать...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Вопрос по sh"  +/
Сообщение от gennadys email(??) on 03-Авг-09, 14:46 
>[оверквотинг удален]
>>4234724
>>   111.222.333.444        
>>4354353
>>
>>  Теперь вопрос, как можно записать в скрипт выборку только второго
>>столбца в каждой строке?
>
>man cut,
>в вашем случае cat 123 | cut -d" " -f10
>но лучше конечно awk.

Чем лучше?

cut -d" " -f10 123

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Вопрос по sh"  +/
Сообщение от artemrts email(ok) on 03-Авг-09, 16:05 
>[оверквотинг удален]
>>>  Теперь вопрос, как можно записать в скрипт выборку только второго
>>>столбца в каждой строке?
>>
>>man cut,
>>в вашем случае cat 123 | cut -d" " -f10
>>но лучше конечно awk.
>
>Чем лучше?
>
>cut -d" " -f10 123

Хорошо, а если содержание первого слова в строке заведомо неизвестно, то 123 не прокатит?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Вопрос по sh"  +/
Сообщение от artemrts email(ok) on 03-Авг-09, 16:14 
>[оверквотинг удален]
>>>  Теперь вопрос, как можно записать в скрипт выборку только второго
>>>столбца в каждой строке?
>>
>>man cut,
>>в вашем случае cat 123 | cut -d" " -f10
>>но лучше конечно awk.
>
>Чем лучше?
>
>cut -d" " -f10 123

Не, так не прокатит.
Вот почему. Предположим
111.222.333.444 ааа
то команда
cut -d" " -f2 123
выдаст ааа. Тут все ок.
Но если будет число вида 111.222.333.44 (афпи, например)
то так уже не получится ибо будет уже 2 пробела.ъ
В таком случае надо писать cut -d" " -f3 123. Вобщем так неподходит.

Вобщем, кто знает как правильно записать на awk, помогите плиз. Чето никак не разберусь.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Вопрос по sh"  +/
Сообщение от Roman (??) on 03-Авг-09, 16:42 
cat test | awk '{print $2}'


test - файл соответсвенно

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Вопрос по sh"  +/
Сообщение от artemrts email(ok) on 03-Авг-09, 17:29 
>cat test | awk '{print $2}'
>
>
>test - файл соответсвенно

Оо. Отлично.

Впринципе скриптик работает как надо

#!/bin/sh
cat test | awk '{print $2}' | head -n 1

выводит на экран второе слово в первой строке.

Как можно указать номер строки без применения head. А средствами awk??

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "Вопрос по sh"  +/
Сообщение от сабакка on 04-Авг-09, 00:39 
awk 'NR==2 {print $2}'
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Вопрос по sh"  +/
Сообщение от сабакка on 03-Авг-09, 16:42 
awk '{print $2}'
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

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

Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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