Вырезание текста между двумя запятыми, исключая последующий текст

У меня есть время услышать, как извлечь информацию об IP из вывода, аналогичного этому:

Fri Jun 9 19:01:54 2017,10.0.0.65,devi1,0,unknown os Fri Jun 9 19:01:54 2017,10.0.0.55,host1,0,unknown os Fri Jun 9 19:01:54 2017,10.0.0.35,srv01,0,unknown os Sat Jun 10 23:11:13 2017,10.0.0.10,switch.domain.com,0,unknown os 

Любые подсказки о том, как я могу, с этого выхода, получают:

 10.0.0.65 10.0.0.55 10.0.0.35 10.0.0.10 

Работает на Bash 4.3.30 в Linux.

Любая помощь будет принята с благодарностью. Большое спасибо!

2 Solutions collect form web for “Вырезание текста между двумя запятыми, исключая последующий текст”

Хотя вы можете сделать это с помощью awk или sed , для простого извлечения между фиксированными разделителями, возможно, лучше всего подходит:

 $ cut -d, -f2 < input 

С awk :

 awk -F, '{print $2}' /path/to/input 

С cut :

 cut -d, -f2 /path/to/input 
  • Как извлечь URI из файлов
  • Как я могу заполнить массив в цикле сценариев оболочки Bash
  • Как сохранить один файл в каталоге?
  • Убедитесь, что только root может редактировать скрипт перед его выполнением
  • Запустить Comand для всех файлов (вложенных папок в папках)
  • Что делает выход в блоке if в сценарии оболочки?
  • Использование sed для замены строки со многими специальными символами?
  • читать -e в подзаголовке
  • Установите близость процесса из сценария оболочки, когда он запускается
  • Нет файлов и каталогов в определенном каталоге в сценарии оболочки
  • Сценарии оболочки, связанные с трубой: прерывание ловушки одного скрипта
  • Linux и Unix - лучшая ОС в мире.