LINUX.ORG.RU

Вывод данных с файла в обратном порядке

 , ,


0

1

подскажите пожалуйста, как вывести данные с файла в обратном порядке (bash). Имеется код, но он выводит

11 12 13 14 15 6 7 8 9 10 1 2 3 4 5

Вместо

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1

reverse() {

IFS=$‘\n’ for entry in $(tac «$1») do for value in $entry do echo " $value" done done }



Последнее исправление: stepatheslayer (всего исправлений: 1)

$ printf '1 2 3 4 5\n6 7 8 9 10\n11 12 13 14 15\n'

1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
$ printf '1 2 3 4 5\n6 7 8 9 10\n11 12 13 14 15\n' | tac | rev

51 41 31 21 11
01 9 8 7 6
5 4 3 2 1
$ printf '1 2 3 4 5\n6 7 8 9 10\n11 12 13 14 15\n' | tac | awk '{ str = $NF; for(i = NF-1; i >= 1; i--){ str = str" "$i; }; print str; }'

15 14 13 12 11
10 9 8 7 6
5 4 3 2 1
spirit ★★★★★
()
Первая созданная тема: 12.09.20 04:05:35
Последняя созданная тема: 12.09.20 04:05:35
anonymous
()

данные с файла в обратном порядке

О чём речь? Текстовый файл? Данные это слова разделённые пробелом? ASCII-cимволы? Строки? UTF-8-символы? Что переворачивать и как не понятно.

kostyarin_ ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.