Puncte:1

Scriptul de lansare cu dublu clic nu funcționează

drapel it

Încerc să lansez un bash cu un dublu clic pe el.

Am facut un script simplu:

#!/usr/bin/env bash
echo Bună, cu cine vorbesc?
citește varname
echo „Îmi pare bine să te cunosc” $varname

și am încercat și punând #!/bin/bash, dar nu m-am schimbat

am facut

sudo chmod +x script_name 
dconf-editor

și setați fișierul de lansare la clic în dconf-editor.

De asemenea, am încercat să adaug extensia .sh la fișier fără succes.

Cu toate acestea, fișierul nu rulează când dau dublu clic pe el. Folosesc ubuntu 20.04 și nu am găsit nicio postare utilă despre această problemă. Poate nu am căutat bine sau suficient, așa că nu ezitați să mă trimiteți

Informații suplimentare:

  • Scriptul funcționează bine când îl lansez de pe terminal,
  • Când am setat „întreaba” în dconf-editor este întreabă-mă cum vreau să-l deschid, dar lansarea tot nu funcționează.
  • Folosind opțiunea „întreaba”, apoi faceți clic pe „rulați în terminal” faceți-o să funcționeze. Dar vreau să funcționeze fără fereastra de întrebări, pentru a o face mai ușor de utilizat.
  • Bara Scriptul Bash care utilizează `sudo` rulează corect din cli, dar nu când se face clic pentru a rula nu mă ajută, deoarece nu am comenzi sudo în scriptul meu.

comportament asteptat: Un terminal este deschis spunând „despre cine vorbesc?”

Mulțumesc mult. Și scuze pentru nivelul meu de engleză, nu sunt nativ. Bouq

Puncte:3
drapel cn

Unii vor spune: „mută-te la alt mediu desktop”.

În mediul desktop Gnome, utilizat de Ubuntu, sistemul posibilitatea de a rula orice program făcând dublu clic pe este în managerul de fișiere depreciat. Este într-adevăr util în unele cazuri de utilizare. În alte cazuri de utilizare, poate fi confuz pentru utilizatori și, cu siguranță, poate fi un coșmar de securitate. Care este probabil un motiv important pentru care este depreciat.

De fapt, rămâne posibil să setați această configurație, totuși, nu mai este configurată implicit.

  • Dacă sunteți un dezvoltator și trebuie să rulați o aplicație în timpul dezvoltării, deschideți un terminal. Introduceți numele programului o dată (utilizați Tab pentru finalizarea comenzii. Apoi utilizați săgeata în sus pentru a repeta comanda.
  • Dacă sunteți un utilizator final care trebuie să rulați o aplicație, atunci instalați-o corect. Instalați sau conectați executabilul în dvs ~/bin sau ~/.local/bin director. Rulați-l de pe terminal doar tastând numele sau creați un lansator pentru acesta ~/.local/share/applications. Apoi, îl puteți rula din prezentarea generală a aplicației și chiar îl puteți fixa pe andocare pentru acces rapid.

Totuși, puteți configura capacitatea de a rula fișiere din managerul de fișiere prin configurarea unui .desktop lansator care rulează un fișier pe care l-ați furnizat ca argument. A .desktop lansator cu linia Exec=gnome-terminal -- %f ar deschide terminalul Gnome și (încerca) să ruleze numele fișierului furnizat, reprezentat de %f. Dacă este un script, îl veți vedea rulând în terminal. Dacă este o aplicație grafică, terminalul Gnome se va încărca pentru scurt timp, dar va dispărea odată ce aplicația grafică a pornit. Un minim .desktop lansator pentru aceasta este:

[Intrare pe desktop]
Nume=Ruler de aplicație generic
Comentariu=Rulează fișiere executabile
Exec=gnome-terminal -- %f
Tip=Aplicație    

Cu .desktop fișier instalat în ~/.local/share/applications, puteți rula orice program făcând clic dreapta și selectând „Deschide cu...”. Puteți asocia fișiere cu o anumită extensie, de ex. .SH pentru scripturi, la lansatorul respectiv, astfel încât să ruleze la dublu clic.

Alternativ, va trebui să comutați cel puțin la un manager de fișiere care încă acceptă caracteristica sau să treceți la un alt mediu desktop, cum ar fi Mate sau Xfce.

Hedwin Bonnavaud avatar
drapel it
Mulțumesc pentru această explicație completă, înțeleg mai bine cum pot funcționa toate acestea și de ce este depreciată, mulțumesc mult. De fapt, voi alege modalitatea curată, voi crea o aplicație.
vanadium avatar
drapel cn
Bine, deși am făcut niște teste dureroase pentru ca lansatorul meu .desktop să funcționeze ;) Trebuie să vă deconectați, apoi să vă reconectați pentru ca acesta să apară în dialogul „Deschide cu”.
Hedwin Bonnavaud avatar
drapel it
Bine, mulțumesc !
Puncte:0
drapel pe

Există multe modalități de a vă rezolva problema.

Aplicație desktop

Puteți crea fișiere cu nume și director ~/.local/share/applications/abc.desktop

[Intrare pe desktop]
Tip=Aplicație
Terminal=adevarat
Nume=Click-Script
Pictogramă=</path/>
Exec=gnome-terminal -e "bash -c './script.sh;$SHELL'"
Categorii=Aplicație;

Actualizați preferințele Nautilus

Deschideți Fișiere (poate că se numește Nautilus) -> Perferențe -> Comportament

Selectați Întreabă ce să faci

ChanganAuto avatar
drapel us
A doua opțiune nu mai este disponibilă în 21.10 (cu Gnome 40).
Hedwin Bonnavaud avatar
drapel it
Nu am testat încă prima opțiune, dar a doua nu funcționează, face parte din ceea ce am încercat: `Am setat "asta" în dconf-editor`, care modifică și această configurație în preferințele nautilus. Este aceeași setare. Btw, ty pentru ajutorul tău! :)
Puncte:0
drapel nl

Aceste scripturi sunt considerate executabile, așa că puteți invoca numai dintr-un mediu. (Cu excepția cazului în care trebuie să le editați).

Am făcut aceste sarcini cu această metodă (pe mediul cu plasmă KDE)

  1. Creați un fișier .desktop pe desktop cu acest conținut

[Intrare pe desktop]
Comentariu=link la scriptul meu
Exec=/calea/la/scriptul/dvs
GenericName=
Pictogramă=sistem rulat
Nume=link către scriptul meu
StartupNotify=true
Terminal=adevarat
TerminalOptions=
Tip=Aplicație

  1. Salvați-l și efectuați un „dublu clic” pentru a arăta în sfârșit magia!

Notă
Opțiunea „Terminal=true”.
și vă puteți invoca sarcina într-o fereastră de terminal.

Nota 2
În mod evident, puteți seta „Întreabați întotdeauna” în opțiunea „pe fișierele executabile deschise” din Dolphin ( Ctrl + shift + , )

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.