Pytanie:
Problem ze skrótem do automatycznego uruchamiania na pulpicie
Pygmalion
2019-07-15 16:49:59 UTC
view on stackexchange narkive permalink

Utworzyłem plik /home/pi/Desktop/DecoderPro.desktop z zawartością

  [Desktop Entry] Type = ApplicationEncoding = UTF-8Name = DecoderProComment = JMRI DecoderProIcon = / home / pi / JMRI / resources / dp3_48x48.gifExec = / home / pi / JMRI / DecoderProTerminal = false;  

Za każdym razem, gdy klikam ikonę na pulpicie, otrzymuję komunikat:

  Ten plik tekstowy „DecoderPro” wydaje się być wykonywalnym skryptem. co chcesz z tym zrobić "wpis na pulpicie"?  

Czy jest możliwe, aby ten skrót na pulpicie uruchamiał się automatycznie, bez komunikatu?

EDYTUJ: To wydaje się, że źródłem problemu jest / home / pi / JMRI / DecoderPro . Jest to również skrypt zaczynający się od #! / bin / bash . Ale jest to również + x.

Obecnie mam wersję buster 10 i jeśli dobrze pamiętam, w poprzedniej wersji Raspbian działało.

Czy próbowałeś, aby był wykonywalny? `chmod + x ~ / Desktop / DecoderPro.desktop`
Tak. Nie pomogło.
@jake Może to pomoże. `/ home / pi / JMRI / DecoderPro` to także skrypt, który zaczyna się od` #! / bin / bash`. Jest to również + x.
@Pygmalion, A jeśli problem wyszedł z linii: `Comment = JMRI DecoderPro`, DecoderPro też jest po tej spacji ... spróbuj:` Comment = "JMRI DecoderPro" `może?
@Ephemeral Nie, to nie pomogło.
@Pygmalion, Widzę, że [tutaj] (https://wiki.archlinux.org/index.php/desktop_entries): `` # Ścieżka do folderu, w którym znajduje się plik wykonywalny runPath = / home / pi / JMRI # Plik wykonywalny aplikacja, prawdopodobnie z argumentami. Exec = bash DecoderPro`, ale myślę, że musisz wywołać plik binarny, a nie skrypt powłoki, lub `bash DecoderPro` jest prawdopodobnie poprawne ... Szukam tego.
@Ephemeral `Exec = bash DecoderPro` nie pomogło. Jeszcze bardziej tajemnicze jest to, że myślę, że w poprzedniej wersji Raspbian to działało.
@Pygmalion, ok Usunąłem odpowiedź. Nie wiem. Przepraszam.
@Ephemeral Ale to działało na twojej malinie, dla skryptu bez .sh jako rozszerzenia?
@Pygmalion, tak. Mój skrypt dla mojego testu to `Voltage` z tylko poleceniem vcgen, również nie mam nagłówka bash, ale jest na mojej starszej malinie z jessie ... czy próbowałeś z` Path`? [tutaj pokrewne] (https://www.raspberrypi.org/forums/viewtopic.php?t=191854)
@Ephemeral Mam `buster 10`, świeżo zainstalowany kilka dni temu, ponieważ karta SD padła. Tak, użyłem polecenia „Path”.
Dla innych noobów takich jak ja znalazłem rozwiązanie https://www.raspberrypi.org/forums/viewtopic.php?t=248380#p1516491
Jeden odpowiedź:
Ephemeral
2019-07-16 00:51:47 UTC
view on stackexchange narkive permalink

Utwórz plik /home/pi/Desktop/test.desktop:

  [Desktop Entry] Version = 1.1Name = testComment = The officialIcon = emblem- debianType = ApplicationPath = / home / piExec = bash testTerminal = true  

skrypt bash o nazwie test (UTF-8) w / home / pi dir:

  echo hello worldread  

Adjust rigth:

  chmod u + x / home / pi / test  

Następnie otwórz: ~ $ pcmanfm przejdź do Edit / Preferences / General , zaznacz pole wyboru „ Don't opcje zapytania przy uruchamianiu pliku wykonywalnego " ref

Edycja: Terminal musi mieć wartość true , jeśli chcesz zobacz wynik swojego skryptu.

Testowane na nowej instalacji Raspbian Buster.

OK, to działa dla mnie. Nie ma go jednak na ekranie pulpitu ...
@Pygmalion, tak, brak ikony na pulpicie. Przeczytałbym więcej na ten temat później i w razie potrzeby zaktualizowałbym swoją odpowiedź. Masz 3 narzędzia zaczynające się od `desktop-file-edit`,` desktop-file-verify` i `desktop-file-install`. Kiedy używam narzędzia do edycji, nic się nie dzieje.
Właściwie, kiedy użyłem `desktop-file-install`, wystąpił błąd z powodu użycia średnika. Wygląda na to, że problem stanowi również średnik po „Terminal = false”. Oryginalne pytanie dotyczy ikony na pulpicie, więc byłbym wdzięczny, gdybyś znalazł rozwiązanie w ten sposób.
@Pygmalion, Tak, rzeczywiście, moja odpowiedź nie jest prawdziwa, ale jest to podejście, które działa i na pewno pomoże mi zrozumieć przyszłość. Obecnie szukam pulpitu.
@Pygmalion, po kilku godzinach jest w porządku, to tylko pole wyboru do odznaczenia, ho!
U mnie działa nawet z moim oryginalnym skryptem, bez „Path”, bez „bash”. Potrzebny jest tylko plik „pcmanfm”.
@Pygmalion, Potrzebujesz terminal = true, jeśli używasz echa w skrypcie bash, w przeciwnym razie żaden terminal nie jest otwarty i nic nie jest wyświetlane, ale tak, `Terminal może być fałszywy` dla 'poleceń w tle'. Masz prawo do pracy Exec z `Exec = / home / pi / test`,` test` wymaga wykonania (kazałem go usunąć), w przeciwnym razie masz błąd: nieprawidłowy plik wpisu pulpitu.


To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 4.0, w ramach której jest rozpowszechniana.
Loading...