Ответ 1
sort -t\| -k +2n dataset.txt
Должен это сделать. разделитель полей и выбор альтернативного ключа
Я ищу самый простой способ решить эту проблему. У меня есть огромный набор данных, который я не могу загрузить в excel этого типа формата
This is a sentence|10
This is another sentence|5
This is the last sentence|20
То, что я хочу сделать, это отсортировать это от наименьшего к наибольшему на основе числа.
cat MyDataSet.txt | tr "|" "\t" | ???
Не уверен, что лучший способ сделать это, я думал об использовании awk для переключения столбцов и сортировки, но у меня были проблемы с этим.
Помогите мне пожалуйста.
sort -t\| -k +2n dataset.txt
Должен это сделать. разделитель полей и выбор альтернативного ключа
Обычно вам не нужна кошка, чтобы отправить файл в фильтр. Тем не менее, вы можете использовать фильтр сортировки.
sort -t "|" -k 2 -n MyDataSet.txt
Этот файл MyDataSet.txt сортирует с помощью | символ как разделитель полей и сортировка в соответствии с вторым полем (число).
Вы попробовали sort -n
$ sort -n inputFile
This is another sentence|5
This is a sentence|10
This is the last sentence|20
вы можете также переключать столбцы с awk
$ awk -F"|" '{print $2"|"$1}' inputFile
10|This is a sentence
5|This is another sentence
20|This is the last sentence
объединение awk и сортировка:
$ awk -F"|" '{print $2"|"$1}' inputFile | sort -n
5|This is another sentence
10|This is a sentence
20|This is the last sentence
за комментарии
если у вас есть числа в предложении
$ sort -n -t"|" -k2 inputFile
This is another sentence|5
This is a sentence|10
This is the last sentence|20
this is a sentence with a number in it 2|22
и, конечно, вы можете перенаправить его в новый файл:
$ awk -F"|" '{print $2"|"$1}' inputFile | sort -n > outFile
Попробуйте эту команду сортировки:
sort -n -t '|' -k2 file.txt
Сортировка по числу, изменение разделителя и захват второй группы с помощью сортировки.
sort -n -t'|' -k2 dataset.txt