script che taglia e incolla

Il ritrovo della comunità dove confrontarsi e discutere sulle notizie dal mondo dell'informatica, di Ubuntu e di tutto quello che la riguarda, novità, pettegolezzi e quant'altro.
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5879
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: script che taglia e incolla

Messaggio da GjMan78 »

giannigianni ha scritto:
venerdì 12 aprile 2024, 16:32
pensando ad un problema del mio pc... ho provato con altro ubuntu 22.04 lts... stessa cosa... funziona solo se do esegui come programma
Devi renderlo eseguibile

Apri il terminale nella cartella dove c'è lo script ed esegui

Codice: Seleziona tutto

chmod +x manicotto.sh
adattando manicotto.sh al nome dello script ovviamente.
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5879
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: script che taglia e incolla

Messaggio da GjMan78 »

albyCardu ha scritto:
venerdì 12 aprile 2024, 17:37
Penso che dovresti creare un file desktop che punti allo script

Codice: Seleziona tutto

[Desktop Entry]
Version=1.0
Type=Application
Exec=/home/gianni/Scrivania/manicotto.sh
Name=manicotto
Terminal=false
Icon=/home/gianni/Immagini/QUALCOSA.png
questo non c'entra nulla. Un file desktop non serve a rendere eseguibile uno script, ma ad avere il programma elencato nel menu di sistema.
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
giannigianni
Prode Principiante
Messaggi: 26
Iscrizione: martedì 31 agosto 2010, 13:40

Re: script che taglia e incolla

Messaggio da giannigianni »

permessi gia dati... ma nulla.. ho anche seguito questa guida https://andreaargentin.it/2020/12/02/ub ... re-script/ ma nada
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 585
Iscrizione: sabato 27 novembre 2010, 19:42

Re: script che taglia e incolla

Messaggio da Ubuntello »

Ciao giannigianni,

il fatto è che Nautilus, il gestore dei file predefinito di Ubuntu, attualmente non permette di eseguire direttamente quelli che sono assimilabili a file di tipo testuale (a prescindere da ciò che questi possano rappresentare), e purtroppo quella guida che hai letto non è valida per le versioni più recenti del programma. Praticamente, se il file da “attivare” contiene del testo, Nautilus non lo considererà mai un file da eseguire direttamente, tramite il doppio click o la pressione del tasto «Invio» dopo la selezione, seppur abbia il permesso di esecuzione, e si dovrà quindi utilizzare «Esegui come programma» come hai già fatto. Questo è proprio il modo in cui al momento è programmato.

Se desideri cambiare questo comportamento, dovrai modificare il programma tramite una cosiddetta “patch”. Ne ho generata una che trovi allegata a questo messaggio e che potrai applicare seguendo le mie istruzioni:

1. Innanzitutto crea la cartella che ospiterà la patch:

Codice: Seleziona tutto

mkdir -p "$HOME/Patch/nautilus"
2. Adesso, manualmente, scarica l'archivio allegato e estrai la patch in "$HOME/Patch/nautilus" ("$HOME" è la cartella principale del tuo utente, quindi se l'utente si chiama “gianni” il percorso sarà "/home/gianni/Patch/nautilus").

3. Assicurati che la patch sia effettivamente dove dovrebbe trovarsi:

Codice: Seleziona tutto

if [ -f "$HOME/Patch/nautilus/allow-direct-script-execution.patch" ]; then echo -e "\033[92mOK: la patch è al suo posto, puoi proseguire.\033[39m"; else echo -e "\033[91mERRORE: la patch non è stata trovata o non è un file.\033[39m"; fi
4. Abilita i repository del codice sorgente e installa il necessario per generare i pacchetti deb:

Codice: Seleziona tutto

sudo sed -i 's/^# deb-src/deb-src/' /etc/apt/sources.list
sudo apt update
sudo apt install devscripts
sudo apt build-dep nautilus
5. Applica la patch al codice sorgente del programma, installa i pacchetti generati, e infine chiedi l'interruzione del processo di Nautilus (in modo da poter eseguire la versione a cui è stata applicata la patch):

Codice: Seleziona tutto

tmpdir="$(mktemp -d --suffix=-patch-nautilus)"
cd "$tmpdir"
apt source nautilus
for entry in nautilus-*; do [ -d "$entry" ] && cd "$entry"; done  # change directory to, for example, "nautilus-42.6"
patch -p1 <"$HOME/Patch/nautilus/allow-direct-script-execution.patch"
EMAIL="$USER@localhost" debchange --local "-userpatched" --urgency low "Apply patch to allow direct script execution."
DEB_BUILD_OPTIONS=nocheck debuild -b -uc -us -jauto
sudo debi
\rm -r "$tmpdir" ####
pkill nautilus
Nota: ogni volta che Nautilus verrà aggiornato, il codice suindicato (da “tmpdir” a “pkill nautilus”* per capirci) andrà rieseguito per modificare nuovamente il programma. Per cui può essere una buona idea salvare questo codice in uno script, così da poterlo eseguire agevolmente quando ce ne sarà bisogno.

* In realtà, “pkill nautilus” (che serve a interrompere l'esecuzione del programma in questione) non è necessario se il Nautilus modificato è già in esecuzione; dunque, quest'ultima riga può tranquillamente essere omessa in uno script da utilizzare per le successive applicazioni della patch (ma ha comunque una sua utilità perché permette di caricare le nuove versioni del programma).


Se un giorno vorrai reinstallare il pacchetto senza patch:

Codice: Seleziona tutto

version="$(dpkg -l | grep "^ii  nautilus " | awk '{ sub("-userpatched[0-9]+", ""); print $3 }')"
sudo apt reinstall "nautilus=$version" "libnautilus-extension1a=$version" "nautilus-data=$version" "gir1.2-nautilus-3.0=$version"
pkill nautilus

Considerazioni finali:
  • Non è detto che questa sia la soluzione “migliore” (infatti, se devo essere sincero, neanch'io ho compreso al cento per cento il modo in cui operate), ma se non altro vi permette di fare ciò che hai chiesto.
  • Effettuare e gestire modifiche al codice sorgente è senz'altro più semplice e immediato in distribuzioni come Gentoo.
  • L'idea di albyCardu è sicuramente intelligente, però ha dei limiti su Ubuntu con Nautilus: infatti, per utilizzare direttamente il file desktop, questo dovrebbe trovarsi sulla Scrivania (oppure essere utilizzato dal lanciatore delle applicazioni o come applicazione preferita dalla dock, che potrebbe essere ancor più limitante).
  • Un'altra soluzione, che non ho proposto intenzionalmente, sarebbe quella di associare i file di tipo “application/x-shellscript” a un file desktop che esegua la shell; ma non posso consigliarla perché permetterebbe di eseguire anche gli script che non hanno il permesso di esecuzione, e dal punto di vista della sicurezza non sarebbe di certo l'ideale.

P.S.: dimenticavo, la mia patch è applicabile sia alla versione di Nautilus 42.6, che a quella attualmente in sviluppo (e probabilmente è compatibile con tutte le versioni dalla 42.6 alla 46.0, in quanto non credo che nel mezzo siano stati fatti cambiamenti rilevanti a quella parte del codice).
Allegati
allow-direct-script-execution.patch.zip
(361 Byte) Scaricato 17 volte
Ultima modifica di Ubuntello il martedì 16 aprile 2024, 23:00, modificato 4 volte in totale.
mednafen-it - Gruppo di utenti italiani dell'emulatore Mednafen | Retro games: hidden gems - top titles - genre guides | Recommended games | Configurazione giochi Windows: Wine Staging con esync (dalla 4.6), drive_c +F + DXVK + vkd3d-proton + patch force feedback e force-large-address-aware
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5879
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: script che taglia e incolla

Messaggio da GjMan78 »

Mi ero perso quest'ultima "innovazione" di Gnome... buono a sapersi.
Per fortuna sono passato a Plasma... ;-)
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Avatar utente
UbuNuovo
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4457
Iscrizione: sabato 12 dicembre 2009, 20:58
Desktop: Mate
Distribuzione: Ubuntu Mate 22.04.1 LTS
Sesso: Maschile
Contatti:

Re: script che taglia e incolla

Messaggio da UbuNuovo »

Io uso Caja, da quando Nautilus ha cominciato a peggiorare, quindi questa opzione non esiste più?
Immagine
Salva l'Ucraina! 🇺🇦
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 585
Iscrizione: sabato 27 novembre 2010, 19:42

Re: script che taglia e incolla

Messaggio da Ubuntello »

@UbuNuovo: eh no, neanche tramite “dconf”.

P.S.: tra le versioni di Ubuntu attualmente supportate, a pacchetti aggiornati, solo la versione di Nautilus presente in Focal (20.04 LTS) dovrebbe ancora offrire questa possibilità.
mednafen-it - Gruppo di utenti italiani dell'emulatore Mednafen | Retro games: hidden gems - top titles - genre guides | Recommended games | Configurazione giochi Windows: Wine Staging con esync (dalla 4.6), drive_c +F + DXVK + vkd3d-proton + patch force feedback e force-large-address-aware
Avatar utente
wilecoyote
Tenace Tecnocrate
Tenace Tecnocrate
Messaggi: 15719
Iscrizione: giovedì 20 agosto 2009, 16:21
Desktop: Kubuntu et alii
Distribuzione: 9.04 32bit 14/18/20/22.04 LTS 64bit
Sesso: Maschile
Località: Ceranesi - Ge

Re: script che taglia e incolla

Messaggio da wilecoyote »

:) Salve, già lo dattilografai in codesto post Gnome OS e Gnome Shell - novità, applicazioni, caratteristiche e consigli come finirà il Gnome.
Dopo questa versione invece di tirarla per le lunghe aspettando la versione 50 per fare il sappuko, consiglio di prendere il Gnome 42, togliere quanto rimasto et voilà Gnome 43, il DE senza DE… :asd:
:ciao: Ciao
ACER Extensa 5230E 2,2 Ghz cpu Celeron 900 hdd 160 GB Ram 1 GB scheda video Intel GM500
ACER Extensa 5635Z 2,2 Ghz cpu Celeron T3100 hdd 320 GB Ram 4 GB scheda video Intel Mobile 4
Quando una Finestra chiusa incontra un Pinguino la Finestra chiusa è una Finestra aperta.
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5879
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: script che taglia e incolla

Messaggio da GjMan78 »

Il problema non nasce da Nautilus, ma da Gnome.

Anche installando Dolphin tramite flatpak il comportamento è lo stesso: al doppio click lo script viene aperto come testo ma non eseguito.

Un workaround veloce è quello di creare un file desktop che faccia da "Script launcher" ed associare i file .sh a questa applicazione.

https://askubuntu.com/a/1502200
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Avatar utente
UbuNuovo
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4457
Iscrizione: sabato 12 dicembre 2009, 20:58
Desktop: Mate
Distribuzione: Ubuntu Mate 22.04.1 LTS
Sesso: Maschile
Contatti:

Re: script che taglia e incolla

Messaggio da UbuNuovo »

Sì, è Gnome che "semplifica" eliminando tutte le possibili personalizzazioni, e infatti dopo Gnome 2 passai a Mate :muro:
Salva l'Ucraina! 🇺🇦
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5879
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: script che taglia e incolla

Messaggio da GjMan78 »

Se continuano a semplificare tra un po' torniamo a questo

Immagine
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Avatar utente
UbuNuovo
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4457
Iscrizione: sabato 12 dicembre 2009, 20:58
Desktop: Mate
Distribuzione: Ubuntu Mate 22.04.1 LTS
Sesso: Maschile
Contatti:

Re: script che taglia e incolla

Messaggio da UbuNuovo »

Il mitico commodore 64 :sisi:
Magari! Credo che il prossimo anno vedremo i retangoloni in stile Windows 8. ( :mumble: era l'otto?)
Ultima modifica di UbuNuovo il lunedì 15 aprile 2024, 23:22, modificato 1 volta in totale.
Salva l'Ucraina! 🇺🇦
Lucio C
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 381
Iscrizione: venerdì 10 dicembre 2021, 18:33
Desktop: fvwm
Distribuzione: (X)Ubuntu20@home; openSUSE42.3@work
Sesso: Maschile
Località: Paneropoli

Re: script che taglia e incolla

Messaggio da Lucio C »

UbuNuovo ha scritto:
lunedì 15 aprile 2024, 23:05
Sì, è Gnome che "semplifica" eliminando tutte le possibili personalizzazioni, e infatti dopo Gnome 2 passai ...
Mi ricorda quello che ha fatto Firefox e per cui sono passato a Pale Moon.
"imbedded mediocrity ? me ne parlava Don Wells piu' di 30 anni fa
The reasonable man adapts himself to the world: the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man. (G.B. Shaw)
Avatar utente
UbuNuovo
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4457
Iscrizione: sabato 12 dicembre 2009, 20:58
Desktop: Mate
Distribuzione: Ubuntu Mate 22.04.1 LTS
Sesso: Maschile
Contatti:

Re: script che taglia e incolla

Messaggio da UbuNuovo »

Anch'io! Sto usando Pale Moon. :asd:
Salva l'Ucraina! 🇺🇦
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 585
Iscrizione: sabato 27 novembre 2010, 19:42

Re: script che taglia e incolla

Messaggio da Ubuntello »

GjMan78 ha scritto:
lunedì 15 aprile 2024, 23:02
Il problema non nasce da Nautilus, ma da Gnome.

Come dicevo, le versioni recenti di Nautilus sono proprio programmate così (posso dirlo con certezza perché ne ho esaminato il codice).
Anche installando Dolphin tramite flatpak il comportamento è lo stesso: al doppio click lo script viene aperto come testo ma non eseguito.

Credo che questo avvenga perché non gli viene concesso il permesso di esecuzione. In ogni caso, se si installa Dolphin tramite pacchetto deb ad esempio, in condizioni “normali” (ovvero senza nulla che gli inibisca il permesso di esecuzione), dopo aver fatto doppio click sul file e aver messo il segno di spunta la prima volta per ricordare che dev'essere eseguito, lo script sarà sempre avviato direttamente anche su GNOME.
mednafen-it - Gruppo di utenti italiani dell'emulatore Mednafen | Retro games: hidden gems - top titles - genre guides | Recommended games | Configurazione giochi Windows: Wine Staging con esync (dalla 4.6), drive_c +F + DXVK + vkd3d-proton + patch force feedback e force-large-address-aware
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5879
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: script che taglia e incolla

Messaggio da GjMan78 »

Ubuntello ha scritto:
martedì 16 aprile 2024, 9:39
Credo che questo avvenga perché non gli viene concesso il permesso di esecuzione.
Intendi allo script o nelle impostazioni di Dolphin?
Perché io ho settato entrambi ma il file continua a non eseguirsi.

Immagine

Immagine
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Avatar utente
wilecoyote
Tenace Tecnocrate
Tenace Tecnocrate
Messaggi: 15719
Iscrizione: giovedì 20 agosto 2009, 16:21
Desktop: Kubuntu et alii
Distribuzione: 9.04 32bit 14/18/20/22.04 LTS 64bit
Sesso: Maschile
Località: Ceranesi - Ge

Re: script che taglia e incolla

Messaggio da wilecoyote »

:) Salve, il non funzionamento di Dolphin dipenderà probabilmente dal formato flatpak.

È lo stesso comportamento che già aveva Konqueror in KDE 3, all'epoca file manager predefinito.

:ciao: Ciao
ACER Extensa 5230E 2,2 Ghz cpu Celeron 900 hdd 160 GB Ram 1 GB scheda video Intel GM500
ACER Extensa 5635Z 2,2 Ghz cpu Celeron T3100 hdd 320 GB Ram 4 GB scheda video Intel Mobile 4
Quando una Finestra chiusa incontra un Pinguino la Finestra chiusa è una Finestra aperta.
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5879
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: script che taglia e incolla

Messaggio da GjMan78 »

Installato nemo con apt.

Funziona.

Direi che è la soluzione più pratica se si vuole eseguire gli script con un doppio click.

Mi rimane la curiosità di sapere perché Dolphin flatpak non li esegue...
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 585
Iscrizione: sabato 27 novembre 2010, 19:42

Re: script che taglia e incolla

Messaggio da Ubuntello »

GjMan78 ha scritto:
martedì 16 aprile 2024, 10:03
Ubuntello ha scritto:
martedì 16 aprile 2024, 9:39
Credo che questo avvenga perché non gli viene concesso il permesso di esecuzione.
Intendi allo script o nelle impostazioni di Dolphin?

Mi riferivo alla sandbox di Flatpak.

Comunque, ripeto: se si installa e utilizza Dolphin da pacchetto deb, normalmente gli script possono essere avviati con un doppio click anche su GNOME.
mednafen-it - Gruppo di utenti italiani dell'emulatore Mednafen | Retro games: hidden gems - top titles - genre guides | Recommended games | Configurazione giochi Windows: Wine Staging con esync (dalla 4.6), drive_c +F + DXVK + vkd3d-proton + patch force feedback e force-large-address-aware
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5879
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: script che taglia e incolla

Messaggio da GjMan78 »

Il problema è che installare Dolphin via apt su Ubuntu Gnome si tira dietro un sacco di librerie, Nemo invece si installa con poche dipendenze.
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Scrivi risposta

Ritorna a “Bar Ubuntu”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 4 ospiti