How do I create multiple files (More than 20k, I need these files to run a test for syncying) with random data in OS X? I used a previously answered question (How Can I Create Multiple Files of Random Data?) that suggested to use something like
dd if=/dev/random bs=1 count=40000 | split -b 2
But using that gives me an error saying too many files.Any other way I can create a loop that will create files with any random data?
You can do it with a shell
for
loop:Adjust
count
andbs
as necessary to make files of the size you care about. Note that I changed to/dev/urandom
to prevent blocking.You can add some
>/dev/null 2>&1
to quiet it down, too.Not sure if you have any file naming requirements, but perhaps this:
The reason your approach doesn't work is that the default suffix for
split
(2 alphabetic characters) isn't a big enough namespace for twenty thousand files. If you add a couple of options:(where
-d
means "use digits, not alphabetic characters, for the suffix" and-a 5
means "use suffixes of length 5"), it ought to work fine - I tested it with/dev/urandom
(for speed) on a GNU/Linux machine without problems.Note that this is much faster than the for-loop approach of the other answers (2.5 seconds versus 43 seconds for Carl Norum's answer on my machine).