Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2008-10-10 12:27:35

  redelek - Członek DUG

redelek
Członek DUG
Skąd: Warszawa
Zarejestrowany: 2008-07-17

Jak odnaleść aplikację za pomocą poleceń w Bash

Witam,

Mam taki mały problemik .
Chodzi mi o lokalizację przeglądarki lynx. W różnych systemach występuje w innym miejscu i tu mam problem

sprawdzałem to tak

Kod:

whereis lynx |cut -f2 -d" "

i wynik sprawdzałem if-em.

Niestety w innych dystrybucjach jest w innych miejscach i moja aplikacja nie działa.

Macie pomysł na uniwersalne odnajdywanie tej przeglądarki lub jakiś inny pomysł ?

Pozdrawiam
Redelek

Ostatnio edytowany przez redelek (2008-10-10 12:27:49)


Pozdrawiam
Redelek
--------------------------------------------------------
Polecam hosting ViPower https://vipower.pl/panel/aff.php?aff=208, TikTalik https://tiktalik.com/pl/

Offline

 

#2  2008-10-10 12:32:58

  grzegorz.85 - Członek DUG

grzegorz.85
Członek DUG
Skąd: Ostrołęka
Zarejestrowany: 2007-07-12
Serwis

Re: Jak odnaleść aplikację za pomocą poleceń w Bash

Kod:

which lynx

Offline

 

#3  2008-10-10 12:52:04

  redelek - Członek DUG

redelek
Członek DUG
Skąd: Warszawa
Zarejestrowany: 2008-07-17

Re: Jak odnaleść aplikację za pomocą poleceń w Bash

grzegorz.85 napisał(-a):

Kod:

which lynx

Oki to druga opcja
ale jak to porównać bo w różnych dystrybucjach są różne miejsca
nie zawsze jest /usr/bin/lynx

Kod:

if [ `which lynx` = "/usr/bin/lynx" ]

to w innych nie zadziała. Chodzi mi o ten warunek jak sprawdzić że zwrócił prawdę jeśli lokalizacja może być rożna ?


Pozdrawiam
Redelek
--------------------------------------------------------
Polecam hosting ViPower https://vipower.pl/panel/aff.php?aff=208, TikTalik https://tiktalik.com/pl/

Offline

 

#4  2008-10-10 13:25:05

  czadman - Bicycle repairman

czadman
Bicycle repairman
Skąd: Wrocław
Zarejestrowany: 2005-07-08

Re: Jak odnaleść aplikację za pomocą poleceń w Bash

Nie należy używać dystrybucji niezgodnych z FHS, a z drugiej strony albo to będzie /usr/bin/lynx albo /usr/local/bin/lynx.

Kod:

if [ ! -x /usr/bin/lynx ];then echo "nie ma";fi

http://www.debian.org/logos/openlogo-nd-50.png

Offline

 

#5  2008-10-10 13:35:37

  azhag - Admin łajza

azhag
Admin łajza
Skąd: Warszawa
Zarejestrowany: 2005-11-15

Re: Jak odnaleść aplikację za pomocą poleceń w Bash

redelek napisał(-a):

grzegorz.85 napisał(-a):

Kod:

which lynx

Oki to druga opcja
ale jak to porównać bo w różnych dystrybucjach są różne miejsca
nie zawsze jest /usr/bin/lynx

Kod:

if [ `which lynx` = "/usr/bin/lynx" ]

to w innych nie zadziała. Chodzi mi o ten warunek jak sprawdzić że zwrócił prawdę jeśli lokalizacja może być rożna ?

nei bardzo rozumiem, czy chodzi ci o coś takiego

Kod:

if which lynx >/dev/null 2>&1; then
    echo "ZOMFG!! Jest lynx!!!"
fi

względnie

Kod:

which lynx >/dev/null 2>&1 && echo "ZOMFG!! Jest lynx!!!"

(do /dev/null przekierowuję, żeby nei śmieciło — w końcu chcesz tylko sprawdzić czy jest (jak rozumiem), nie gdzie jest)

tutaj nie porównuję wyniku which lynx, a sprawdzam czy polecenie to nie zwraca kodu błędu

Ostatnio edytowany przez azhag (2008-10-10 13:38:43)


Błogosławieni, którzy czynią FAQ.
opencaching :: debian sources.list :: coś jakby blog :: polski portal debiana :: linux user #403712

Offline

 

#6  2008-10-10 13:48:23

  redelek - Członek DUG

redelek
Członek DUG
Skąd: Warszawa
Zarejestrowany: 2008-07-17

Re: Jak odnaleść aplikację za pomocą poleceń w Bash

Oki dzięki o to mi chodziło :)


Pozdrawiam
Redelek
--------------------------------------------------------
Polecam hosting ViPower https://vipower.pl/panel/aff.php?aff=208, TikTalik https://tiktalik.com/pl/

Offline

 

#7  2008-10-10 14:10:47

  czadman - Bicycle repairman

czadman
Bicycle repairman
Skąd: Wrocław
Zarejestrowany: 2005-07-08

Re: Jak odnaleść aplikację za pomocą poleceń w Bash

Wszytko ładnie, ale jeśli polecenie będzie zlokalizowane poza ścieżkami zadeklarowanymi w zmiennej PATH? Jeśli skrypt wykonuje się w środowisku z zadeklarowaną zmienną systemową PATH to nie ma potrzeby użycia which jeśli lynx jest w którejś ścieżek zmiennej PATH, a jeśli nie ma tej zmiennej to używanie which jest pozbawione celu.

Kod:

locate -r '/lynx$'

Ostatnio edytowany przez czadman (2008-10-10 14:18:28)


http://www.debian.org/logos/openlogo-nd-50.png

Offline

 

#8  2008-10-10 14:30:18

  azhag - Admin łajza

azhag
Admin łajza
Skąd: Warszawa
Zarejestrowany: 2005-11-15

Re: Jak odnaleść aplikację za pomocą poleceń w Bash

czadman napisał(-a):

Kod:

locate -r '/lynx$'

pod warunkiem, że locate jest zainstalowany i ma bazę utworzoną po zainstalowaniu lynksa oraz po tym fakcie lynx nie został usunięty, bez aktualizacji bazy (zamotane :]). Inaczej albo nie zadziała, albo pokaże głupotę.


Błogosławieni, którzy czynią FAQ.
opencaching :: debian sources.list :: coś jakby blog :: polski portal debiana :: linux user #403712

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)