Постовой
Linux/Unix shell: как отсортировать IP адреса
Рубрика: Shell
Метки: shell | команды Linux
Среда, 17 сентября 2008 г.
Просмотров: 5675
Подписаться на комментарии по RSS
Метки: shell | команды Linux
Среда, 17 сентября 2008 г.
Просмотров: 5675
Подписаться на комментарии по RSS
Вопрос. Мне требуется отсортировать список IP-адресов, расположенный в текстовом файле. Каким образом мне сделать эту операцию в Linux или Unix?
Ответ. Вам необходимо использовать команду sort для сортировки. Сортировка основана на одном или нескольких ключах, действующих на каждую входящую строку. По умолчанию, пробем используется как дефолтный разделитель полей.
Команда sort - сортируем IP адреса
Это пример исходного файла:
192.168.1.100 192.168.1.19 192.168.1.102 192.168.2.1 192.168.0.2
Введем следующую команду:
$ sort -t . -k 3,3n -k 4,4n /path/to/file
192.168.0.2 192.168.1.19 192.168.1.100 192.168.1.102 192.168.2.1
Где,
- -t . : Устанавливает поле . (точка) как разделитель полей
- -n : Делает программную числовую сортировку
- -k opts: Сортируте данные / поля, используя только определенные поля.К примеру, опция -k 2 заставляет программу сортировать только второе поле.
Для подробного изучения:
- man sort
Постовой
Качественное наружное утепление стен
Еще записи по теме
- BASH Shell: перенаправляем вывод и ошибки в /dev/null
- 10 базовых основ Linux применимых к управлению VMware ESX
- iRedMail: Установка полноценного почтового сервера с LDAP, Postfix, RoundCube, Dovecot, ClamAV, DKIM, SPF в CentOS 5.x, часть 1
- Добавление DNS серверов с помощью DNS-add
- Замораживаем сессию vi
- Смертоносные команды Linux
- SFTP c MySecureShell в Debian Etch
Комментариев: 2
для подобной сортировки достаточно более короткой команды
$ sort -n /path/to/file
хотя может уже время повлияло...
Спасибо очень помогло