Бэш; реверсирование вывода MD5 в текстовый файл & amp; сортировка

У меня есть файл file1.txt со списком MD5sums и соответствующими именами файлов.

edad74614d6d3fa2252c3d74ff037ac7 wp-blog-header.php de4edc0df80ba147ebcc26f9e0a8b96f wp-config.php 68070de41736e57f8757648a80b9cbbb wp-admin/upgrade-functions.php 29b6a5c82153f1371e1188ffa7b47619 wp-admin/error_log 55373449cc2320c57803f1f5b52b9ce9 wp-admin/edit.php

Как мне сделать это с файлом file2.txt с строками, начинающимися с имен файлов, а не с хешем, и сортировать по алфавиту следующим образом:

wp-blog-header.php edad74614d6d3fa2252c3d74ff037ac7 wp-config.php de4edc0df80ba147ebcc26f9e0a8b96f wp-admin/edit.php 55373449cc2320c57803f1f5b52b9ce9 wp-admin/error_log 29b6a5c82153f1371e1188ffa7b47619 wp-admin/upgrade-functions.php 68070de41736e57f8757648a80b9cbbb

Спасибо, так много!

1
задан 9 February 2018 в 10:42

4 ответа

Как насчет:

awk '{ print $2, $1 }' < file | sort > file2

Это займет данные из файла под названием «файл», замените два поля и отсортируйте их в файл «file2»

1
ответ дан 17 July 2018 в 21:14

Если вы хотите отсортировать текстовый файл на основе определенных столбцов, вам не нужно менять порядок столбцов, если вы используете опцию -k для GNU sort. Чтобы сортировать только на основе второго и последующих (с разделителями с пробелом), используйте:

sort -k 2

Кроме того, я рекомендую вам использовать языковые настройки C или POSIX для сравнения и сортировки имен путей или вы можете получить неожиданные результаты из-за нечувствительности к регистру или специальных символов:

LC_COLLATE=POSIX sort ...
3
ответ дан 17 July 2018 в 21:14

Как насчет:

awk '{ print $2, $1 }' < file | sort > file2

Это займет данные из файла под названием «файл», замените два поля и отсортируйте их в файл «file2»

1
ответ дан 23 July 2018 в 21:53

Если вы хотите отсортировать текстовый файл на основе определенных столбцов, вам не нужно менять порядок столбцов, если вы используете опцию -k для GNU sort. Чтобы сортировать только на основе второго и последующих (с разделителями с пробелом), используйте:

sort -k 2

Кроме того, я рекомендую вам использовать языковые настройки C или POSIX для сравнения и сортировки имен путей или вы можете получить неожиданные результаты из-за нечувствительности к регистру или специальных символов:

LC_COLLATE=POSIX sort ...
3
ответ дан 23 July 2018 в 21:53
  • 1
    Поскольку вы никогда не принимали ответа раньше: если это ответит на ваш вопрос, не забудьте нажать серый ☑ под номером слева от этого текста, чтобы принять его , что означает «да, этот ответ действительно "! – David Foerster 9 February 2018 в 22:19

Другие вопросы по тегам:

Похожие вопросы: