Ниже приведены 2 метода. Второй метод, который использует seq
+ date
, чтобы имитировать то, о чем спрашивал ваш вопрос. Однако этот метод с использованием / dev / urandom
и fold
создаст случайные числовые строки любой длины, которую вы хотите.
Вы можете использовать такую команду для генерации случайной строки фиксированной длины.
$ tr -dc '0-9' 1m-example.txt
Результатом будет следующий тип вывода:
$ head -5 1m-example.txt
405295373332357365
317790052799018265
512803158528955068
838448126037265342
014951048334094344
Время:
real 0m30.261s
user 0m1.700s
sys 0m29.976s
Примерно так будет генерировать пакетные данные, которые затем могут быть переданы по конвейеру до date
за один вызов:
$ seq -f @%12.0f 1 1000000 | date -f - '+%s%N' > 1m-example.txt
$ seq -f @%12.0f 1 1000000 | head -5
@ 1
@ 2
@ 3
@ 4
@ 5
Результатом такого типа вывода:
$ seq -f @%12.0f 1 1000000 | head -5 | date -f - '+%s%N'
1000000000
2000000000
3000000000
4000000000
5000000000
] Time:
real 0m8.647s
user 0m3.547s
sys 0m5.971s
Но это кажется совершенно ненужным, поскольку вам, кажется, просто нужно 1MM строк случайных данных определенного формата / типа. В этом случае я бы сделал что-то вроде решения @Graeme , используя вместо этого printf
с расширением скобок оболочки.
Не все так просто и не очевидно... попробуй
hexdump -v -e '"%08.8_ax "' -e' 4/1 "%02x " " " 4/1 "%02x " " " 4/1 "%02x " " " 4/1 "%02x " ' -e '" |" 16/1 "%_p" "|\n"' file
Вместо использования шестнадцатеричного дампа я бы предложил использовать xxd, например:
xxd <bin_name>
00000000: cffa edfe 0700 0001 0300 0080 0200 0000 ................
00000010: 1000 0000 d006 0000 8580 2100 0000 0000 ..........!.....
00000020: 1900 0000 4800 0000 5f5f 5041 4745 5a45 ....H...__PAGEZE
00000030: 524f 0000 0000 0000 0000 0000 0000 0000 RO..............
00000040: 0000 0000 0100 0000 0000 0000 0000 0000 ................
Если вы хотите |
вокруг букв ascii в конце, попробуйте это:
xxd <bin_name> | sed -r 's/(................)$/|\1|/g'
00000000: cffa edfe 0700 0001 0300 0080 0200 0000 |................|
00000010: 1000 0000 d006 0000 8580 2100 0000 0000 |..........!.....|
00000020: 1900 0000 4800 0000 5f5f 5041 4745 5a45 |....H...__PAGEZE|
00000030: 524f 0000 0000 0000 0000 0000 0000 0000 |RO..............|
00000040: 0000 0000 0100 0000 0000 0000 0000 0000 |................|