Сортировка по имени?

Я пытаюсь сортировать следующий файл

http://pastebin.com/EqA2SUMy .

Но часть, которую я пытаюсь сортировать, – это поле 11, и только если первое поле является атомом. Вот пример

ATOM 33 CG ASP A 438 8.283 24.407 131.412 1.00 17.18 C ATOM 34 OD1 ASP A 438 9.153 23.597 131.783 1.00 17.73 O ATOM 35 OD2 ASP A 438 7.530 25.009 132.208 1.00 18.39 O ATOM 36 N PHE A 439 5.102 23.813 128.903 1.00 12.35 N ATOM 37 CA PHE A 439 3.680 23.598 129.138 1.00 12.15 C 

Я знаю, как сортировать файл на основе полей. Например, для моего файла это будет

  sort -k11 <\file path > 

sort, основанный на одиннадцатом поле, но как его сортировать, только если первое поле является атомом b / c, есть поля, которые идут до 11 и начинаются с HETATM и т. д.

  • команда сортировки в unix с числовой сортировкой
  • sort -u (unique) работает для мульти-ключей, но не для одного ключа
  • Как отсортировать строки, содержащие «_» численно?
  • Масштабируемость «sort -u» для гигантских файлов
  • Как выполнить пользовательский сортировку
  • сортировать файл, но держать пары линий вместе
  • Сначала попытка сортировки по двум полям - это второй критерий
  • Команда сортировки не работает должным образом
  • 2 Solutions collect form web for “Сортировка по имени?”

    Это должно работать, если я правильно понял, вам нужны только строки, начинающиеся с ATOM .

     sort -k11 <(awk '$1 ~ /ATOM/' file) 

    Объяснение:

    • sort -k11 : сортировать по 11- sort -k11 полю
    • awk '$1 ~ /ATOM/' file : только печатает поля startig с ATOM
    • Часть awk представляет собой вход для части sort

    Как бы вы хотели, чтобы конечный результат выглядел? Должны ли все строки с первым полем ATOM появляться в верхней части файла, конец файла?

    Если это нормально, если ATOM в любом месте списка, то возможным способом является сортировка их в другом файле и добавление к началу или нижней части исходного файла или к определенному столбцу. Я уверен, что кто-то еще опубликует более простое решение – только мои два цента на данный момент ..

     grep -v ^ATOM file > result; sort -k11 < grep ^ATOM file >> result 
    Interesting Posts

    Печать файлов в формате PDF с подсветкой синтаксиса через терминал

    Странное сообщение об ошибке при установке CentOS 6.5 относительно диска, содержащего метаданные BIOS RAID?

    Патч, который не содержит номеров строк, возможно ли это?

    Какие специальные символы приглашения для поддержки busbox для busybox?

    vi: как использовать строку в качестве команды?

    NTP не синхронизируется в VM

    Настройка Apache для чтения типа файла svgz

    Зашифрованная загрузка

    Оптимизация SSD

    Как поместить три тонкие страницы в PDF-страницу формата А4?

    Восстановление данных с диска UFS с плохим суперблоком

    Могу ли я использовать слот для SIM-карты для телефона?

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

    Я должен беспокоиться? Segfaults сообщается в syslog при объединении моментального снимка LVM (возврат оригинала обратно к снимку)

    Нужно ли передавать файлы tar через «rsync» в режиме архивации?

    Linux и Unix - лучшая ОС в мире.