Skocz do zawartości

Uruchamianie Nautiliusa Ze Skryptu


bresio

Rekomendowane odpowiedzi

Witam

Prosty skrypt, który uruchomi nautiliusa z zadanym katalogiem

#!/bin/bash
komenda="/usr/bin/nautilus '/media/dysk/'"
$komenda

 

Można skrócić do jednej linii, ale nie w tym problem.

 

uruchamiając z shella samo /usr/bin/nautilus '/media/dysk/' wszystko działa jak trzeba.

 

Po uruchomieniu skryptu, który robi dokładnie to samo otrzymuje komunikat:

Nie można odnaleźć "/home/tom/'/media/dysk/'".

 

Skąd się bierze dodatkowy parametr wycelowany w katalog domowy?

Jak się tego pozbyć?

 

Dzięki

Pozdrawiam

Tomek

Odnośnik do komentarza
Udostępnij na innych stronach

Wydaje mi się to trochę głupie, ale spróbuj:

#!/bin/bash
komenda="/usr/bin/nautilus '/media/dysk/'"
"$komenda"

Tak, w cudzysłowiu. Być może coś tu po drodze znika (standardowy problem ze spacjami). Choć strzelam całkiem w ciemno...

 

Przy Twojej propozycji dostaje po prostu komunikat:

/usr/bin/dolphin: line 3: /usr/bin/nautilus '/media/dysk/': Nie ma takiego pliku ani katalogu

 

dodanie do skryptu:

echo $komenda 

wyświetla prawidłowe polecenie, które po skopiowaniu do shella działa jak powinno.

 

Sprawdziłem zmienne globalne i lokalne na okoliczność związaną z nautilusem, ale na pierwszy rzut nic się z nim nie wiąże.

Odnośnik do komentarza
Udostępnij na innych stronach

Wygląda na to, że problem powoduje pojedynczy cudzysłów wewnątrz podwójnego. Takie coś zadziała:

#!/bin/bash
komenda="/usr/bin/nautilus /media/dysk/"
$komenda

 

Co ciekawe, jak wpiszesz poniższe, to też nautilus da dziwny wynik:

/usr/bin/nautilus "'/media/dysk'"

 

Czemu tak to działa - nie mam pojęcia... ale wygląda na to, że nie należy wrzucać pojedynczych cudzysłowów wewnątrz podwójnych.

Odnośnik do komentarza
Udostępnij na innych stronach

Nautilus traktuje zewnętrzne cudzysłowy (nie ma znaczenia czy pojedyncze czy podwójne) jako informację, że wszystko co znajduje się pomiędzy zewnętrznymi cudzysłowami należy traktować literalnie.

Zwróćcie uwagę, że nie można przekazać parametru jako zmiennej jeśli ujmiecie ją w cudzysłów. Chodzi mi o to, że w bashu

export aa=/home/user
cd "$aa"

przenosi nas do /home/user. Nautilus parametr "$aa" potraktuje literalnie i będzie próbował otworzyć podkatalog o nazwie $aa od bieżącego katalogu a nie katalog, który zawiera zmienna $aa.

Podejrzewam, że to ze względu na dopuszczenie spacji w nazwach plików/katalogów i możliwość wpisania nazwy ze spacją np."idiotyczny pomysł".

/usr/bin/nautilus "idiotyczny pomysł"

jest równoważne zapisowi

/usr/bin/nautilus ./idiotyczny\ pomysł

Odnośnik do komentarza
Udostępnij na innych stronach

To kolejny problem.

Moze teraz naswietle bardziej, do czego mi to potrzebne.

W jakis sposób rozszerzenia Gnome3 otwieraja przegladarke plików dolphin.

troszke po partyzancku chce podmienic dolphin na swój skrypt o tej samej nazwie, który bedize otwieral nautilusa.

Udalo sie to osiagnac poprzez skrypt:

#!/bin/bash
sciezka=`echo $5 |sed 's/\(.*\)./\1/' |sed 's/.\(.*\)/\1/'`
komenda="/usr/bin/nautilus ${sciezka/ /\ }"
$komenda

 

Dla katalogów z nazwami bez spacji dziala ok. Dla tych ze spacja jeszcze nie.

Moze jakies podpowiedzi?

Pozdrawiam

Edytowane przez WalDo
usuniecie zbędnego cytatu
Odnośnik do komentarza
Udostępnij na innych stronach

Nie cytuj calego postu. Po pierwsze widac go powyzej, po drugie w tresci w ogóle nie odnosisz sie do cytowanego tekstu.

 

Moze jakies podpowiedzi?
A po co takie kombinacje? Nie prosciej jest powiazac odpowiednie rozszerzenia plików, zeby otwieraly sie w nautilusie a nie w dolphinie?
  • Upvote 1
Odnośnik do komentarza
Udostępnij na innych stronach

[...] tylko jak to zrobić w Gnome3?
A jaka to różnica czy odpalasz nautilusa w gnome 2 czy 3?

PPM na pliku, właściwości i tam na ostatniej chyba zakładce wybierasz z jakim programem chcesz otworzyć. poniżej jest "ustawić jako domyślny?", klikasz i masz.

Odnośnik do komentarza
Udostępnij na innych stronach

A jaka to różnica czy odpalasz nautilusa w gnome 2 czy 3?

PPM na pliku, właściwości i tam na ostatniej chyba zakładce wybierasz z jakim programem chcesz otworzyć. poniżej jest "ustawić jako domyślny?", klikasz i masz.

 

Kiedyś tak było, teraz po PPM np. na katalogu domowym są dwie zakładki: "Podstawowe" i "Uprawnienia"

Nie ma zakładki o której piszesz

Odnośnik do komentarza
Udostępnij na innych stronach

Póki G3 nie dorobi się jakichś sensownych interfejsów użytkowników to już łatwiej zmienić to w KDE, bo jak sam widzisz Gnome i KDE korzystają z tych samych powiązań. W KDE jest to System settings -> File Associations (nie pamiętam dokładnie, ale coś w tym stylu). Ewentualnie można poszukać ręcznie odpowiednich kluczy w dconf-editor lub gconf-editor.

Odnośnik do komentarza
Udostępnij na innych stronach

Kiedyś tak było, teraz po PPM np. na katalogu domowym są dwie zakładki: "Podstawowe" i "Uprawnienia"

Nie ma zakładki o której piszesz

To ja mam inne Gnome 3 :ph34r:

A poważnie, to masz tylko 2 zakładki, bo robisz to na katalogu a nie na określonym typie pliku :)

 

[waldo@F15 tmp]$ nautilus --version
GNOME nautilus 3.0.2

[waldo@F15 tmp]$ touch fake.mp3
[waldo@F15 tmp]$ nautilus
Initializing nautilus-gdu extension
Initializing nautilus-open-terminal extension

no i dalej niestety już "obrazkowo" → http://dl.dropbox.com/u/3137486/fake_mp3.avi (filmik - nagranie desktopu, kilkanaście sekund, ok.300kB)

Na nagraniu widać również opcję "Otwórz za pomocą..." i tam też można wybrać aplikację domyślnie otwierającą dany typ pliku.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...