bedtime question : xargs

vu pham vu at sivell.com
Thu Apr 23 05:44:36 PDT 2009


David A. Bandel wrote:
> On Wed, Apr 22, 2009 at 10:59 PM, Vu Pham <vu at sivell.com> wrote:
>> Using xargs, how can I pipe the output ( of some command ) as the *first*
>> parameter of some other command ?
>>
>> Here is my problem: I have various rpm files in a directory tree. I want to
>> copy all of these files to a remote server using scp. What I am thinking is
>>
>> [oliver at xen2vm4 redhat]$ find . -name "*.rpm"
>> ./SRPMS/hello-1.0.0-2.src.rpm
>> ./SRPMS/hello-1.0.0-1.src.rpm
>> ./RPMS/i686/hello-1.0.0-2.i686.rpm
>> ./RPMS/i686/hello-1.0.0-1.i686.rpm
>>
>>
>> # find . -name "*.rpm" | xargs  scp  ???   root at remoteserver:
> 
> why invoke xargs at all?
> find . -name \*.rpm -exec scp {} root at remoteserver: \;
> (note:  the \; is required)
>

Thanks David. It works. It did ask me the password for every copied file 
but I could solve it with copying the id_rsa.pub over the remote machine.



[oliver at xen2vm4 ~]$ find . -name \*.rpm -exec scp {} root at xen2vm1: \;
root at xen2vm1's password:
hello-1.0.0-2.src.rpm                         100% 3056     3.0KB/s 
00:00
root at xen2vm1's password:
hello-1.0.0-1.src.rpm                         100% 3058     3.0KB/s 
00:00
root at xen2vm1's password:
hello-1.0.0-2.i686.rpm                        100% 6473     6.3KB/s 
00:00
root at xen2vm1's password:
hello-1.0.0-1.i686.rpm                        100% 6476     6.3KB/s 
00:00
[oliver at xen2vm4 ~]$


Vu



More information about the Linux-users mailing list