http://qs1969.pair.com?node_id=285567


in reply to best way to pass data

Well, if that gets converted to a '/bin/sh -c', it will probably crash if @array really does have thousands of lines in it. There is a hard limit to the number of parameters that sh will take.

Here is one solution:

open( PROG, '| /tmp/scripts.pl' ); for ( @ARRAY ) { print PROG $_; } close( PROG );

If you do it that way, then you will have to write your other script to accept the data via STDIN.

If this is too slow for you, you might want to take a look at IPC::Shareable::SharedMem for a shared memory solution.