[Risolto] Scripts madebits errori

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
ivantu
Rampante Reduce
Rampante Reduce
Messaggi: 6047
Iscrizione: sabato 8 giugno 2013, 9:25
Desktop: Ubuntu Lubuntu Budgie
Distribuzione: 20.04 LTS; 21.10
Sesso: Maschile

[Risolto] Scripts madebits errori

Messaggio da ivantu »

Buona pomeriggio

Installando il pacchetto madebits-pca_1.0.0-1.deb, su Lubuntu 22.04 LTS
non funzionano, lanciandoli da terminale ho errori del tipo seguente.

Il file copy2folder.sh

Codice: Seleziona tutto

#!/bin/bash

folder=$(zenity --file-selection --directory --title="Copy To Folder")
if [[ $folder ]]; then
	# cp -r $@ "$folder"
	for var in "$@"
	do
	    cp -r "$var" "$folder"
	done
fi
in terminale

Codice: Seleziona tutto

sh copy2folder.sh /path/file.sh
copy2folder.sh: 4: [[: not found
Ultima modifica di ivantu il martedì 21 giugno 2022, 17:50, modificato 1 volta in totale.
Buona giornata utenti del forum. :ciao: ivantu
Avatar utente
crap0101
Rampante Reduce
Rampante Reduce
Messaggi: 8206
Iscrizione: martedì 30 ottobre 2007, 6:33
Desktop: LXDE
Distribuzione: Ubuntu 18.04.1 LTS
Sesso: Maschile
Località: TO
Contatti:

Re: Scripts madebits errori

Messaggio da crap0101 »

prova a lanciarlo usando bash e non sh, potrebbe essere che hai una versione vecchia di dash, non compatibile con il builtin [[ che è invece tipico (e da molto) di bash.
http://www.gnu.org/ http://boinc.berkeley.edu/ http://www.python-it.org/
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
ivantu
Rampante Reduce
Rampante Reduce
Messaggi: 6047
Iscrizione: sabato 8 giugno 2013, 9:25
Desktop: Ubuntu Lubuntu Budgie
Distribuzione: 20.04 LTS; 21.10
Sesso: Maschile

Re: Scripts madebits errori

Messaggio da ivantu »

con bash. Benissimo.
Buona giornata utenti del forum. :ciao: ivantu
Avatar utente
vaeVictis
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4684
Iscrizione: venerdì 27 luglio 2012, 17:58
Desktop: Gnome
Distribuzione: Ubuntu 20.04 64bit

Re: [Risolto] Scripts madebits errori

Messaggio da vaeVictis »

p.s.: se lo script ha una prima riga di quel tipo (mi pare si dica shabang :D ), puoi dargli i permessi di esecuzione e lanciarlo semplicemente usando la sintassi:

Codice: Seleziona tutto

./nome_script.sh
Il sistema operativo si occupera' di scegliere la shell adeguata, ma nella tua shabang e' specificata univocamente. L'unica scocciatura si avrebbe nel caso bash non fosse presente in /bin, e non mi ricordo quindi non saprei dirti quale sia il comportamento di defaulti in questo caso.
Ultima modifica di vaeVictis il giovedì 23 giugno 2022, 11:29, modificato 1 volta in totale.
Pirates arrrrrrrrrrr awesome!!!
«I fear not the man who has practiced 10000 kicks once,
but I fear the man who has practiced one kick 10000 times.»
ivantu
Rampante Reduce
Rampante Reduce
Messaggi: 6047
Iscrizione: sabato 8 giugno 2013, 9:25
Desktop: Ubuntu Lubuntu Budgie
Distribuzione: 20.04 LTS; 21.10
Sesso: Maschile

Re: [Risolto] Scripts madebits errori

Messaggio da ivantu »

Grazie
Buona giornata utenti del forum. :ciao: ivantu
Avatar utente
crap0101
Rampante Reduce
Rampante Reduce
Messaggi: 8206
Iscrizione: martedì 30 ottobre 2007, 6:33
Desktop: LXDE
Distribuzione: Ubuntu 18.04.1 LTS
Sesso: Maschile
Località: TO
Contatti:

Re: [Risolto] Scripts madebits errori

Messaggio da crap0101 »

dipende quale exec* viene eseguita, facendo qualche prova direi una della famiglia "p":

Codice: Seleziona tutto

crap0101@orange:/tmp$ cat foo.c
#include <stdio.h>
#include <unistd.h>

int
main (int argc, char **argv) {
    int ret;
    ++argv;
    ret = execvp(*argv, argv);
    printf("foo: exec* return code: %d\n", ret);
    return ret;
}
crap0101@orange:/tmp$ gcc -Wall foo.c -o foo
crap0101@orange:/tmp$ cat bar
#!/bin/cat 

echo 'ciao dal bar'
readlink -f /proc/$$/exe
crap0101@orange:/tmp$ ./foo bash bar   # viene eseguita bash
ciao dal bar
/bin/bash
crap0101@orange:/tmp$ ./foo sh bar     # viene eseguita sh
ciao dal bar
/bin/dash
crap0101@orange:/tmp$ ./foo bar   # errore, la dir corrente non è nel path
foo: exec* return code: -1
crap0101@orange:/tmp$ ./foo /tmp/bar # viene eseguito /bin/cat
#!/bin/cat 

echo 'ciao dal bar'
readlink -f /proc/$$/exe
crap0101@orange:/tmp$ nano bar
crap0101@orange:/tmp$ cat bar
######!/bin/cat 

echo 'ciao dal bar'
readlink -f /proc/$$/exe
crap0101@orange:/tmp$ ./foo /tmp/bar  # NON viene eseguito cat ma sh
ciao dal bar
/bin/dash
crap0101@orange:/tmp$ 
in pratica, come da doc, se l'header è qualcosa che sembra avere un senso, lo si esegue, altrimenti si cerca l'eseguibile di default (sh in questo caso)
http://www.gnu.org/ http://boinc.berkeley.edu/ http://www.python-it.org/
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
Avatar utente
vaeVictis
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4684
Iscrizione: venerdì 27 luglio 2012, 17:58
Desktop: Gnome
Distribuzione: Ubuntu 20.04 64bit

Re: [Risolto] Scripts madebits errori

Messaggio da vaeVictis »

@crap0101
Sono contento che ti sei rimesso a studiare C, avevi perso un po' di smalto ultimamente... :D

(e' un riferimento tra me e crap0101, chi legge da fuori potrebbe fraintendere)
Pirates arrrrrrrrrrr awesome!!!
«I fear not the man who has practiced 10000 kicks once,
but I fear the man who has practiced one kick 10000 times.»
Avatar utente
crap0101
Rampante Reduce
Rampante Reduce
Messaggi: 8206
Iscrizione: martedì 30 ottobre 2007, 6:33
Desktop: LXDE
Distribuzione: Ubuntu 18.04.1 LTS
Sesso: Maschile
Località: TO
Contatti:

Re: [Risolto] Scripts madebits errori

Messaggio da crap0101 »

ma no, è che stavo pulendo in casa e tolto la polvere da qualche libro :-D

Volevo capire se c'era un modo di ignorare a priori lo shebang, ma al momento mi pare di no
http://www.gnu.org/ http://boinc.berkeley.edu/ http://www.python-it.org/
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 3 ospiti