2013-09-04 11 views
5

Jak uzyskać pełną ścieżkę polecenia, którego używam?W systemie Linux, jak uzyskać pełną ścieżkę polecenia używam?

na przykład, mam zainstalowane JDK w /opt/Oracle/jdk1.7.0_25, a mój PATH wygląda następująco:

/opt/Oracle/jdk1.7.0_25/bin/:/usr/lib/x86_64-linux-gnu/qt4/bin:/home/unimous/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games. 

Chcę dostać /opt/Oracle/jdk1.7.0_25/bin/java z java.

+2

try 'które java' – suspectus

Odpowiedz

11
which java 

powinien dać ci pełną ścieżkę.

Działa to również w przypadku każdego innego polecenia w systemie Linux, wystarczy użyć which command_name.

0

To zależy od dystrybucji, w Debianie i dystrybucjach opartych na Debianie masz update-alternatives

I dla Twojego Java zrobić na przykład:

update-alternatives --install „/ usr/bin/java”, "Java" "/opt/Oracle/jdk1.7.0_25/bin/java" 3

Help section on update-alternatives 

update-alternatives: --install needs <link> <name> <path> <priority> 

Usage: update-alternatives [<option> ...] <command> 

Commands: 
    --install <link> <name> <path> <priority> 
    [--slave <link> <name> <path>] ... 
          add a group of alternatives to the system. 
    --remove <name> <path> remove <path> from the <name> group alternative. 
    --remove-all <name>  remove <name> group from the alternatives system. 
    --auto <name>   switch the master link <name> to automatic mode. 
    --display <name>   display information about the <name> group. 
    --query <name>   machine parseable version of --display <name>. 
    --list <name>   display all targets of the <name> group. 
    --get-selections   list master alternative names and their status. 
    --set-selections   read alternative status from standard input. 
    --config <name>   show alternatives for the <name> group and ask the 
          user to select which one to use. 
    --set <name> <path>  set <path> as alternative for <name>. 
    --all     call --config on all alternatives. 

<link> is the symlink pointing to /etc/alternatives/<name>. 
    (e.g. /usr/bin/pager) 
<name> is the master name for this link group. 
    (e.g. pager) 
<path> is the location of one of the alternative target files. 
    (e.g. /usr/bin/less) 
<priority> is an integer; options with higher numbers have higher priority in 
    automatic mode. 

Options: 
    --altdir <directory>  change the alternatives directory. 
    --admindir <directory> change the administrative directory. 
    --log <file>    change the log file. 
    --force     allow replacing files with alternative links. 
    --skip-auto    skip prompt for alternatives correctly configured 
          in automatic mode (relevant for --config only) 
    --verbose    verbose operation, more output. 
    --quiet     quiet operation, minimal output. 
    --help     show this help message. 
    --version    show the version. 
0

Jeśli jesteś w bash:

type java 

typ jest wbudowany, który jest zwykle osobny plik wykonywalny:

$ type type 
type is a shell builtin 
$ type which 
which is hashed (/usr/bin/which) 
Powiązane problemy