Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #29827
| From | Martin Gregorie <martin@address-in-sig.invalid> |
|---|---|
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: A "current directory" concept for Java... |
| Date | 2014-08-23 19:34 +0000 |
| Organization | A noiseless patient Spider |
| Message-ID | <ltaqbk$gnc$1@dont-email.me> (permalink) |
| References | <slrnlvet48.fp3.avl@login.logic.tuwien.ac.at> <lt85hb$gnk$1@dont-email.me> <slrnlvfl43.fp3.avl@login.logic.tuwien.ac.at> <lta871$22r$1@dont-email.me> <slrnlvhgf8.fp3.avl@login.logic.tuwien.ac.at> |
On Sat, 23 Aug 2014 16:31:36 +0000, Andreas Leitgeb wrote:
> Martin Gregorie <martin@address-in-sig.invalid> wrote:
>> On Fri, 22 Aug 2014 23:38:43 +0000, Andreas Leitgeb wrote:
>>> I'll need to emulate some kind of current directory,
>> If you haven't already done so, take a look at File.listFiles() and its
>> filter-equipped siblings.
>
> Yep, I think I also missed that in Path... Good to know that I'll just
> have to use (good old) java.io for that.
>
>>> Eventually I need to spawn processes, which then need that emulated
>>> current directory to be their initial real current directory.
>> Do these have to be Java processes?
>
> No.
> At least, I already found myself, how to pass a directory to the
> ProcessBuilder. :)
>
Cool. It all looks straightforward - at least for UNIX/Linux. To run
'myprocess' against each file in the directory you'd modify my
processDirectory method to look like this:
void processDirectory(File dir)
{
File flist[] = f.listFiles();
for (int i = 0; i < flist.length; i++
{
if (flist[i].isDirectory())
processDirectory(new File(dir, flist[i].getName()));
else
{
ProcessBuilder pb = new ProcessBuilder("myprocess",
flist[i].getname());
pb.directory(dir);
Process p = pb.start();
/* deal with process i/o streams */
int exitValue = p.waitFor();
/* see if the process exited normally */
}
}
}
It looks to me as if ProcessBuilder is very similar to C's exec()
functions. The above is not intentionally teaching you to suck eggs:
apologies if you already know what it shows. Apart from the point that
there doesn't seem to be any way to make connections to the new Process's
i/o streams before the command it controls starts to execute I can see
only one bijou snaggette which might affect code portability: the meaning
of 'current directory'.
In a UNIX/Linux environment relative file names are relative to the
directory the user is in when a command is issued, but in at least some
circumstances Windows programs act as though the 'current directory' is
the one the program was loaded from. I've noticed this difference when
running Windows programs on a Linux box under Wine but am unclear when it
occurs: might it apply when a program is launched by clicking an icon but
not when its launched from a command line or a user-written CMD file?
--
martin@ | Martin Gregorie
gregorie. | Essex, UK
org |
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
A "current directory" concept for Java... Andreas Leitgeb <avl@auth.logic.tuwien.ac.at> - 2014-08-22 16:49 +0000
Re: A "current directory" concept for Java... Jeff Higgins <jeff@invalid.invalid> - 2014-08-22 14:50 -0400
Re: A "current directory" concept for Java... Jeff Higgins <jeff@invalid.invalid> - 2014-08-22 15:10 -0400
Re: A "current directory" concept for Java... Martin Gregorie <martin@address-in-sig.invalid> - 2014-08-22 19:26 +0000
Re: A "current directory" concept for Java... Andreas Leitgeb <avl@auth.logic.tuwien.ac.at> - 2014-08-22 23:38 +0000
Re: A "current directory" concept for Java... Martin Gregorie <martin@address-in-sig.invalid> - 2014-08-23 14:24 +0000
Re: A "current directory" concept for Java... Andreas Leitgeb <avl@auth.logic.tuwien.ac.at> - 2014-08-23 16:31 +0000
Re: A "current directory" concept for Java... Martin Gregorie <martin@address-in-sig.invalid> - 2014-08-23 19:34 +0000
Re: A "current directory" concept for Java... Andreas Leitgeb <avl@auth.logic.tuwien.ac.at> - 2014-08-24 08:42 +0000
Re: A "current directory" concept for Java... Martin Gregorie <martin@address-in-sig.invalid> - 2014-08-24 10:37 +0000
Re: A "current directory" concept for Java... Andreas Leitgeb <avl@auth.logic.tuwien.ac.at> - 2014-08-24 13:41 +0000
Re: A "current directory" concept for Java... Martin Gregorie <martin@address-in-sig.invalid> - 2014-08-24 18:33 +0000
Re: A "current directory" concept for Java... Andreas Leitgeb <avl@auth.logic.tuwien.ac.at> - 2014-08-24 22:33 +0000
Re: A "current directory" concept for Java... Martin Gregorie <martin@address-in-sig.invalid> - 2014-08-25 00:14 +0000
Re: A "current directory" concept for Java... Jeff Higgins <jeff@invalid.invalid> - 2014-08-22 19:45 -0400
Re: A "current directory" concept for Java... Andreas Leitgeb <avl@auth.logic.tuwien.ac.at> - 2014-08-23 15:32 +0000
Re: A "current directory" concept for Java... Jeff Higgins <jeff@invalid.invalid> - 2014-08-23 12:49 -0400
Re: A "current directory" concept for Java... Jeff Higgins <jeff@invalid.invalid> - 2014-08-23 17:40 -0400
Re: A "current directory" concept for Java... Jan Burse <janburse@fastmail.fm> - 2014-08-23 10:31 +0200
With new Path (Re: A "current directory" concept for Java...) Jan Burse <janburse@fastmail.fm> - 2014-08-23 10:48 +0200
Re: With new Path (Re: A "current directory" concept for Java...) Andreas Leitgeb <avl@auth.logic.tuwien.ac.at> - 2014-08-23 14:38 +0000
Re: A "current directory" concept for Java... Roedy Green <see_website@mindprod.com.invalid> - 2014-08-23 05:31 -0700
csiph-web