top-shop.ru
Контейнер Phibo 'Арт-Декор',
Утилита AWK в UNIX позволяет решить задачу перемешивания строк в файле (входном потоке). Вам даже не нужен GAWK!

Случайное перемешивание строк: Решение на AWK.

Возможностей стандартной утилиты AWK (которые меньше возможностей GNU AWK - GAWK), вполне достаточно чтобы решить задачу перемешивания строк во входном потоке, или в файле. Мое решение - в использовании массива строк.

AWK скрипт сохраняется в файл, например
random.awk:

BEGIN {max=0
srand()}
{
p=int(rand()*64000)

if (p > max)
    max = p
arr[p] = $0
}
END {
       for (x = 1; x <= max; x++)
         if (x in arr)
           print arr[x]
}

Использование скрипта для перемешивания строк:

cat lines.txt | awk -f random.awk > result.txt

то же самое:

awk -f random.awk lines.txt > result.txt

В первом случае перемешивается входной поток (использование в конвейере комманд), во втором сначала считывается файл (самой утилитой awk):

содержание