pscp — copy a file to multiple nodes in parallel.
pscp  [ -p? ] [ -h hostlist
        | -n nodelist
      ] [ -i filename ] [ -o filename ] [ -I command ] [ -O command ] [ -m num ] [ -s server ] [ -l port ] [ --maxsize size ] [ --tokens num ] [ --lowtokens num ] [ -v level ]
pscp [ -V ]
The pscp command is designed to copy files to many nodes in real parallelism. The implemented strategy ensures scalability up to hundreds of nodes for arbitrary file sizes.
Beside copying a single file to all destination hosts, the pscp command may generate and unpack on-the-fly archives to copy a set of files at once. Data compression could also be enabled by defining proper compress/uncompress commands.
-h,
	  --hosts
          hostlist
        List of hosts to copy the file(s) to.
-n,
	  --nodes
          nodelist
        List of node ids to copy the file(s) to.
-i,
	  --input
          filename
        Filename to be sent to remote nodes.
-o,
	  --output
          filename
        
            Filename stored on the remote nodes.
            In case of the option -i is given, this
            option must be given, too, even if input and output file
            are the same.
          
-I,
	  --icmd
          command
        
            Command to pack a file or list of files to be transmitted.
            The file or list of files to be transmitted must be part
            of command, see examples below.
            The command must send its output to stdout.
          
-O,
	  --ocmd
          command
        Command to unpack a file or list of files received.
-C,
	  --cp
          files
        Create and unpack a tar-file on-the-fly including sub-directories.
            This is a short hand for -I "/bin/tar
            cvPf - .
          files" -O "/bin/tar xPf -"
            
-m,
	  --manual
          num
        
            Manually start up num clients.
            Only for debugging purposes.
          
-s,
	  --server
          server
        
            Server to connect to for clients started using
            -m option.
          
-l,
	  --lport
          port
        
            Port number to connect to for clients started using
            -m option.
          
-p,
	  --progress
        Show progress information.
--maxsize
          size
        Size of chunks to send or receive at once.
--tokens
          num
        Number of tokens to use for flow control stop.
--lowtokens
          num
        Number of low tokens to use for flow control start.
-v,
	  --verbose
          level
        
            Be more verbose. Level could be
            in the range from 0 to 3.
          
-V,
	  --version
        Print pscp version and exit.
-?,
	  --help
        Print usage and exit.
      Hostlist and
      nodelist may be comma separated lists
      of host names or host id, respectively. 
    
      If neither hostlist nor
      nodelist is given, the file will
      be copied to all but the local host.
      All files will be copied relatively to the current working
      directory.
    
      The options -i, -o and
      -I, -O, -C
      are mutually exclusive.
    
Pscp copies an input file or an input data stream to an output file or an output data stream on many nodes in parallel. Writing data to disk and forwarding data to the next node takes place in parallel.
      Pscp uses the ParaStation MPI
      psport library for data transfers,
      that automatically will use the most effective communication
      channel available.
      If required, the communication layer may be controlled using
      environment variables, refer to
      ps_environment(7) for details.
      The client process on each node is spawned using the ParaStation MPI
      process management.
    
        As pscp uses administrative ParaStation MPI tasks to
        spawn the client processes, the user must be a member of the
        adminuser list or the user's group must
        be a member of the admingroup list. Refer
        to ParaStation MPI User's Guide and
        psiadmin(8) for details.
      
      Copy the file /boot/vmlinuz to all other
      cluster nodes:
    
pscp -i /boot/vmlinuz -o /boot/vmlinuz
      To copy all files and directories within
      /boot to hosts node5 up
      to node9 and show the progress, enter
    
pscp -C /boot -h node5,node6,node7,node8,node9 -p
      To send the file testfile2 to nodes
      node01 to
      node19 and compress/decompress it
      on-the-fly, enter
    
  pscp -h `seq -s , -f "node%02g" 10 19` -I \
    "bzip2 -c testfile2" -O "bunzip2 > testfile2"The same will be accomplished using
  pscp -n `seq -s , -f "node%02g" 10 19` -I \
    "/bin/tar cvPfj - testfile2" -O "/bin/tar xPfj -"
      The options -i and -O may be
      combined to do things like
    
pscp -h node03,node17 -i myfiles.tar.gz -O "/bin/tar xPfz -"
      This command will transfer the already existing compressed tar
      file myfiles.tar.gz to nodes
      node03 and node17 and
      will decompress and unpack the archive on each node.