Jak wykonać skrypt SH ze skrótu na pulpicie?


37

Próbuję zrobić skrót, aby zalogować się do mojego serwera ssh:

ssh x.x.x.x

Zrobiłem następujący plik:

ssh_home.sh

Sprawił, że był wykonywalny:

sudo chmod +x ./ssh_home

Sprawdzane przez kliknięcie właściwości prawym przyciskiem myszy, aby sprawdzić, czy był wykonywalny i czy ..

Ale cokolwiek zrobię, dwukrotne kliknięcie spowoduje uruchomienie gedit. Próbowałem „Otwórz za pomocą”, ale nie wyświetla się tam żadna aplikacja terminalowa. Przeszukałem sieć, ale znalazłem sposób na link do pliku, ale nie zintegrowałem go w jednym „pliku skrótu”


2
Czy dodałeś #! /usr/bin/shna początku pliku (pierwszy wiersz)?
Niedola

W jakiej wersji Ubuntu nie jesteś zainteresowany? Zasadniczo powinien to być tylko przypadek oznaczenia pliku jako wykonywalnego we właściwościach / uprawnieniach, ale w dniu 13.04 wydaje mi się, że to nie działa (nawet bezpośrednio w pliku .sh #! /bin/bashna początku ...)
Jez W

Sprawdź także właściciela i uprawnienia. Czy klikający go użytkownik ma uprawnienia do uruchomienia?
Niedola

1
Twoje polecenia nie mogą być poprawne - masz na myśli ssh_home.shi /ssh_home, które nie są tymi samymi plikami.
l0b0

2
@Misery: To /bin/shnie jest /usr/bin/sh. ( /usr/bin/shzdarzy się, że będzie działać na systemach, w których są /bini /usr/binsą w tym samym katalogu; nie sądzę, że tak jest w przypadku Ubuntu>)
Keith Thompson

Odpowiedzi:


50

Wiem, że to było dawno temu, ale jeśli ktoś inny zapyta, mam tę odpowiedź.

  1. Otwórz nautilus
  2. Menu Pliki -> karta zachowania
  3. Uruchom pliki wykonywalne po ich otwarciu

W późniejszych wersjach ta opcja znajduje się w: menu Pliki -> Edytuj -> Preferencje -> karta zachowania

W Ubuntu 14.10 przesuń mysz na górę ekranu i pojawi się pasek Plik, Edycja itp ... Kliknij EDYTUJ -> Preferencje -> karta Zachowanie


2
To powinna być zaakceptowana odpowiedź IMHO. Byłem coraz bardziej sfrustrowany, próbując dowiedzieć się, dlaczego nie mogłem uruchomić skryptu powłoki z Nautilusa.
David Baucum

Co to jest menu Pliki? Nigdy tego nie widziałem.
IgorGanapolsky

Pracował Kliknij prawym przyciskiem myszy mój skrypt powłoki w przeglądarce plików. Utworzono link. Następnie przeciągnij i upuść link na pulpit. Wykonałem także powyższy krok w przeglądaniu plików -> Preferencje -> uruchom zamiast widoku.
maxweber 16.04.15

3
Jedną z komplikacji jest to, że wpływa to na wszystkie pliki wykonywalne. (To może być to, czego chcesz.)
Keith Thompson,

Świetna odpowiedź! W systemie Ubuntu 18.04 ustawiam go na „Pytaj, co robić”, aby móc go uruchomić lub wyświetlić za każdym razem, gdy kliknę taki plik. Dzięki!
MS Berends,

36

Myślę, że lepiej byłoby użyć pliku uruchamiającego dla skryptu, tworząc ~/Desktop/ssh_home.desktopplik o następującej zawartości:

[Desktop Entry]
Version=1.0
Exec=/home/yourname/bin/ssh_home.sh
Name=SSH Server
GenericName=SSH Server
Comment=Connect to My Server
Encoding=UTF-8
Terminal=true
Type=Application
Categories=Application;Network;

W ten sposób będziesz mieć klikalną ikonę, która uruchomi twój skrypt.

Może być konieczne ustawienie flagi wykonywalnej za pomocą chmod:

chmod +x ~/Desktop/ssh_home.desktop

1
Ta metoda działa, ale wolę rozwiązanie z 1 plikiem ...
Michel

6
@ michel Jeśli wszystko, co robi skrypt, jest uruchomione ssh host, nie potrzebujesz go, po prostu zmień wiersz Exec na Exec=ssh host.
geirha

1
To jedyne rozwiązanie, które działało dla mnie.
Aviad P.

Dostaję Untrusted application launcherokno komunikatu i to nie uruchamia mojego polecenia.
Matt

@Matt spróbuj kliknąć prawym przyciskiem myszy ikonę, przejdź do, Properties > Permissionsa następnie wybierz Allow executing file as program. Również jeśli skopiujesz i wkleisz powyższy tekst do pliku, upewnij się, że po wierszach nie ma żadnych spacji końcowych . Może to spowodować wyświetlenie komunikatu o błędzie.
Olivia Stork

3

„Pułapką” było dla mnie to, że szukałem pliku klikając prawym przyciskiem myszy, aby znaleźć sposób zmiany zachowania (aby uruchomić skrypt zamiast otwierać go w gedit). Nie klikaj prawym przyciskiem myszy! Raczej otwórz z „zwykłego” paska menu:

Edytuj-Preferencje-Zachowanie i zmień na „uruchom” lub „pytaj za każdym razem”.

Komentarz: Według mojego gustu powinien istnieć sposób na uruchomienie programu poprzez kliknięcie prawym przyciskiem myszy. Zwłaszcza, że ​​kliknięcie prawym przyciskiem myszy prowadzi do menu „otwórz za pomocą”, dzięki czemu możesz wyszukać „otwórz za pomocą bash”, jednak „bash” nie jest uwzględnione jako opcja ...


Na mój gust też ...
Marecky

1

imo najprostsza odpowiedź to -

  1. Sprawdź, czy plik .sh działa po kliknięciu lub uruchomieniu z własnego katalogu.
  2. Jeśli to działa, kliknij go prawym przyciskiem myszy w folderze Pliki nazywanym Nautilus, wybierz „Utwórz link”
  3. Spowoduje to utworzenie pliku o nazwie „link do xxxx.sh” w tym samym katalogu
  4. Przeciągnij to na pulpit
  5. Zmień nazwę tak, jak chcesz, np. Wyczyść „link do” i „sh”, po prostu zostaw nazwę, nadal będzie działać.

Możesz także zmienić ikonę linku. Kliknij go prawym przyciskiem myszy, wybierz Właściwości, kliknij domyślną ikonę w lewej górnej części okna właściwości, a więc po prostu nawiguj, aż znajdziesz obraz, którym chcesz być ikoną.
Brian Hellekin

0

Powiedziałbym, że najłatwiejszym sposobem dodania skryptu powłoki do skrótów byłoby dodanie pliku .sh do katalogu domowego. Po skopiowaniu do katalogu domowego przejdź do niestandardowych skrótów i dodaj polecenie sh yourfile.sh

To była moja praca w nadziei, że ci to pomoże

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.