Есть файл с адресами вида:
10.20.30.40:50
192.168.49.129:987
и т.д......
Точнее в файле гораздо больше всего, с помощью awk я вытаскиваю эти адреса.
Мне необходимо с помощью какой либо утилиты (grep, sed, awk....) выводить только ip адрес, без порта и двоеточия, отбрасывать их. Ни как не получается. OS FreeBSD 8.1.
> Есть файл с адресами вида:
> 10.20.30.40:50
> 192.168.49.129:987
> и т.д......
> Точнее в файле гораздо больше всего, с помощью awk я вытаскиваю эти
> адреса.
> Мне необходимо с помощью какой либо утилиты (grep, sed, awk....) выводить только
> ip адрес, без порта и двоеточия, отбрасывать их. Ни как не
> получается. OS FreeBSD 8.1.ну, судя по всему, вы просто никак не пытались
sed 's#:.*##'
прекрасно справляется
>[оверквотинг удален]
>> 192.168.49.129:987
>> и т.д......
>> Точнее в файле гораздо больше всего, с помощью awk я вытаскиваю эти
>> адреса.
>> Мне необходимо с помощью какой либо утилиты (grep, sed, awk....) выводить только
>> ip адрес, без порта и двоеточия, отбрасывать их. Ни как не
>> получается. OS FreeBSD 8.1.
> ну, судя по всему, вы просто никак не пытались
> sed 's#:.*##'
> прекрасно справляетсяПытался и не раз
вот крутил возле этого
grep '.*:' -o
но двоеточие отсавалось
>[оверквотинг удален]
>>> Мне необходимо с помощью какой либо утилиты (grep, sed, awk....) выводить только
>>> ip адрес, без порта и двоеточия, отбрасывать их. Ни как не
>>> получается. OS FreeBSD 8.1.
>> ну, судя по всему, вы просто никак не пытались
>> sed 's#:.*##'
>> прекрасно справляется
> Пытался и не раз
> вот крутил возле этого
> grep '.*:' -o
> но двоеточие отсавалосьgrep выводит или не выводит строки, в зависимости от их соответствия маске
эта попытка не считается
засчитываем только попытки, подразумевающие чтение и (хотя бы, частичное) понимание документации
>[оверквотинг удален]
>>> ну, судя по всему, вы просто никак не пытались
>>> sed 's#:.*##'
>>> прекрасно справляется
>> Пытался и не раз
>> вот крутил возле этого
>> grep '.*:' -o
>> но двоеточие отсавалось
> grep выводит или не выводит строки, в зависимости от их соответствия маске
> эта попытка не считается
> засчитываем только попытки, подразумевающие чтение и (хотя бы, частичное) понимание документациипардон, прошу прощения!
попытка не так уж плоха, не прочитал про опцию -o
и стала бы победой в таком:
grep '^[^:]+' -o
или таком:
grep '^[^:]*' -o
виде
>[оверквотинг удален]
>> 192.168.49.129:987
>> и т.д......
>> Точнее в файле гораздо больше всего, с помощью awk я вытаскиваю эти
>> адреса.
>> Мне необходимо с помощью какой либо утилиты (grep, sed, awk....) выводить только
>> ip адрес, без порта и двоеточия, отбрасывать их. Ни как не
>> получается. OS FreeBSD 8.1.
> ну, судя по всему, вы просто никак не пытались
> sed 's#:.*##'
> прекрасно справляетсяДа, действительно получается! Спасибо большое!
>> ну, судя по всему, вы просто никак не пыталисьsed -e 's/:.*$//' ip.txt
cut -d : -f 1 ip.txt
awk -F":" '{print $1}' ip.txtcat ip.txt
192.168.23.23:50
10.10.10.10:34и еще наверняка с десяток способов.
> и еще наверняка с десяток способов.в регулярках не силен
grep "[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*" -o ip.txtну и специальный греп именно для айпи адресов
http://www.ashep.org/2011/pyat-grep-podobnyx-programm/
>>> ну, судя по всему, вы просто никак не пытались
> sed -e 's/:.*$//' ip.txt
> cut -d : -f 1 ip.txt
> awk -F":" '{print $1}' ip.txt
> cat ip.txt
> 192.168.23.23:50
> 10.10.10.10:34
> и еще наверняка с десяток способов.первая строка здесь - эквивалент моей за исключением $
> Есть файл с адресами вида:
> 10.20.30.40:50
> 192.168.49.129:987
> и т.д......
> Точнее в файле гораздо больше всего, с помощью awk я вытаскиваю эти
> адреса.
> Мне необходимо с помощью какой либо утилиты (grep, sed, awk....) выводить только
> ip адрес, без порта и двоеточия, отбрасывать их. Ни как не
> получается. OS FreeBSD 8.1.я выважу тока айпишнеги вот так
cat /var/log/auth.log |grep "Failed password" |egrep -o '([[:digit:]]{1,3}\.){3}[[:digit:]]{1,3}' |sort |uniq
cat file | sed "s/:.*//"