Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #21335

Re: problem with multiword args and Runtime.exec()

Newsgroups comp.lang.java.programmer
Date 2013-01-11 11:44 -0800
References <05a24a02-1ac3-4866-ba2b-20c488793b96@googlegroups.com> <4600dcb5-1819-4e5b-aeae-70162d97144d@googlegroups.com>
Message-ID <00bca6a0-7ce5-4e0c-8374-e3a8b5bed32d@googlegroups.com> (permalink)
Subject Re: problem with multiword args and Runtime.exec()
From FredK <fred.l.kleinschmidt@gmail.com>

Show all headers | View raw


On Friday, January 11, 2013 11:41:00 AM UTC-8, FredK wrote:
> On Friday, January 11, 2013 8:33:39 AM UTC-8, Aryeh M. Friedman wrote:
> 
> > No matter what version of Runtime.exec I call I can not make a arg that has multiple words in it (*NOT* multiple args but a single one) for example if I need to issue the following command in unix I can not find a way to do the stuff in "'s as a single arg [the called program requires this... i.e. it *MUST NOT* be treated as different elements of String[] args if it was a java program]):
> 
> > 
> 
> > 
> 
> > 
> 
> > rdiff-backup --remote-schema "ssh -C -p9222 %s rdiff-backup --server" username@remoteserver::/path_to/filestobackup /path_to/backedupfiles
> 
> 
> 
> Your program gets the quotes string as a single argument.
> 
> If you want to pass that string as a single argument to something
> 
> like system(), you have to ensure that there are quotes around the
> 
> multi-word argument.
> 
> 
> 
> For example, assume arg1 contains the multiword value.
> 
> You cannot just say:
> 
>    sprintf( buffer, "ls %s", arg1 );
> 
>    system( buffer );
> 
> 
> 
> you have to use
> 
>    sprintf( buffer, "ls '%s'", arg1 );
> 
>    system( buffer );
> 
> 
> 
> 
> 
> -- 
> 
> Fred K

Oops - answered it as "C".
However, the same concept goes for Java
  String buffer = "ls '" + arg1 + "'";

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

problem with multiword args and Runtime.exec() "Aryeh M. Friedman" <Aryeh.Friedman@gmail.com> - 2013-01-11 08:33 -0800
  Re: problem with multiword args and Runtime.exec() Lew <lewbloch@gmail.com> - 2013-01-11 11:07 -0800
  Re: problem with multiword args and Runtime.exec() FredK <fred.l.kleinschmidt@gmail.com> - 2013-01-11 11:41 -0800
    Re: problem with multiword args and Runtime.exec() FredK <fred.l.kleinschmidt@gmail.com> - 2013-01-11 11:44 -0800
  Re: problem with multiword args and Runtime.exec() "A. Bolmarcich" <aggedor@earl-grey.cloud9.net> - 2013-01-11 15:27 -0600
  Re: problem with multiword args and Runtime.exec() Martin Gregorie <martin@address-in-sig.invalid> - 2013-01-11 21:36 +0000

csiph-web