Search Members Help

» Welcome Guest
[ Log In :: Register ]

Mini-ITX Boards Sale, Fanless BareBones Mini-ITX, Bootable 1G DSL USBs, 533MHz Fanless PC <-- SALE $200 each!
Get The Official Damn Small Linux Book. DSL Market , Great VPS hosting provided by Tektonic
Pages: (2) </ 1 [2] >/

[ Track this topic :: Email this topic :: Print this topic ]

reply to topic new topic new poll
Topic: Java binary locator, bash srcipt< Next Oldest | Next Newest >
^thehatsrule^ Offline





Group: Members
Posts: 3275
Joined: July 2006
Posted: Oct. 18 2006,20:33 QUOTE

This is just my opinion:
using find in / is not a good idea, since that will go through every possible directory (including attached media).  At the very least, start in /opt (and/or /usr).

Also, what if there is more than one instance of /bin/java ?  Then there'd be multiple entries.

I'd suggest something like...
Code Sample
for eachdir in `ls -d /opt/java* 2>/dev/null`; do
 for TEMP in `find "$eachdir" 2>/dev/null | grep -re "/bin/java$" `; do
   if [ -x "$TEMP" ]; then
     JAVAEXEC="$TEMP"
     break 2;
   fi
 done
done


Also, why would you need to check if it is a symlink instead?
Back to top
Profile PM 
Zucca Offline





Group: Members
Posts: 524
Joined: Feb. 2006
Posted: Oct. 19 2006,09:55 QUOTE

Quote (^thehatsrule^ @ Oct. 18 2006,18:33)
This is just my opinion:
using find in / is not a good idea, since that will go through every possible directory (including attached media).  At the very least, start in /opt (and/or /usr).

Also, what if there is more than one instance of /bin/java ?  Then there'd be multiple entries.

I'd suggest something like...
Code Sample
for eachdir in `ls -d /opt/java* 2>/dev/null`; do
 for TEMP in `find "$eachdir" 2>/dev/null | grep -re "/bin/java$" `; do
   if [ -x "$TEMP" ]; then
     JAVAEXEC="$TEMP"
     break 2;
   fi
 done
done


Also, why would you need to check if it is a symlink instead?

I tought that find /* thing too. And it fastens process much by skipping /mnt.

And if there's more tha one java binary file I have to make script ask for which to use.

Looking for symlink is because if Java has been installed by some other way (to an onther directory)  and if that install has created that symlink there as to act like normal install.


--------------
Do you have it? - http://dy.fi/mak
Back to top
Profile PM WEB ICQ MSN 
mikshaw Offline





Group: Members
Posts: 4856
Joined: July 2004
Posted: Oct. 19 2006,13:17 QUOTE

It's kinda wasteful to find anywhere other than /opt, in my opinion.  If Java has been installed via source or debian/rpm package, it will almost 100% definitely without doubt be in PATH, probably for sure.  If not, the user already knows enough about the system to not need a failsafe script, or else he's already got bigger problems to deal with.
The only place where finding it would be necessary is for tar.gz or uci myDSL extensions, and since you already know where those install, you can narrow your search dramatically.

I think you're making this project much more complicated than it needs to be. How many variations of Java can there possibly be, especially for DSL? The DSL user either 1) knows enough to be able to easily deal with PATH issues, or 2) isn't going to install Java by any method other than MyDSL or Deb.  Maybe I'm overlooking custom installers in an official release (like Firefox does)?  I don't know if that applies to Java.


--------------
http://www.tldp.org/LDP/intro-linux/html/index.html
Back to top
Profile PM WEB 
Zucca Offline





Group: Members
Posts: 524
Joined: Feb. 2006
Posted: Oct. 19 2006,20:41 QUOTE

I just want to make few things more simple. =) That's all.

--------------
Do you have it? - http://dy.fi/mak
Back to top
Profile PM WEB ICQ MSN 
8 replies since Oct. 18 2006,15:02 < Next Oldest | Next Newest >

[ Track this topic :: Email this topic :: Print this topic ]

Pages: (2) </ 1 [2] >/
reply to topic new topic new poll
Quick Reply: Java binary locator

Do you wish to enable your signature for this post?
Do you wish to enable emoticons for this post?
Track this topic
View All Emoticons
View iB Code