PDA

View Full Version : Programmazione della shell Linux e creazione di un .bin


natasha
10-03-2007, 14:23
Buonasera a tutti,
esiste qualche risorsa sulla programmazione della shell Linux, possibilmente gratuita ed online?
Altra domanda: come si crea, materialmente, un installer .bin, che contenga anche al suo interno i dati da installare (es. cartelle di file)?

kingv
10-03-2007, 14:33
questa è una buona risorsa, anche se più che leggerla dall'inizio alla fine io la trovo utile come reference:
http://tldp.org/LDP/abs/html/


per quanto riguarda il .bin (che non vuol dire nulla, l'estenzione puo' essere quella che vuoi) non è complicato farseli a mano con le ridirezioni della shell (vedi link precedente), ma per far prima puoi usare questa utility:
http://www.megastep.org/makeself/

natasha
11-03-2007, 15:50
Ti ringrazio moltissimo, sia la guida che l'utility sono di grande aiuto!
Mi è rimasto un solo problema: quali comandi usare per aggiungere due righe di testo in cima ad un file?

natasha
11-03-2007, 16:24
Mmmm... non proprio in testa, ma.... facciamo

cat >> foo
pippo
pluto

natasha
11-03-2007, 16:37
Uhm.... purtroppo, non è una soluzione scriptabile.
Come faccio, DA SCRIPT, ad aggiungere le due righe "pippo" e "pluto" in cima al file "foo"?

kingv
11-03-2007, 18:03
Uhm.... purtroppo, non è una soluzione scriptabile.
Come faccio, DA SCRIPT, ad aggiungere le due righe "pippo" e "pluto" in cima al file "foo"?


non mi viene in mente nessuna maniera elegante.
molto semplicemente serviti di un file di appoggio:


mv file_orig file_temp
echo -e "pippo\npluto" >file_orig
cat file_temp >> file_orig && rm file_temp

natasha
11-03-2007, 18:25
ehm... ma se devo aggiungerli alla fine, e non all'inizio, tanto vale usare

echo "pippo\npluto" >> file_orig

kingv
11-03-2007, 19:42
ehm... ma se devo aggiungerli alla fine, e non all'inizio, tanto vale usare

echo "pippo\npluto" >> file_orig


ma non volevi aggiungerle all'inizio? :confused:

la maniera più semplice è spostare il file originario in un file temporaneo, crearne uno nuovo col le due righe che ti servono e poi concatenare il file temporaneo, cancellandolo una volta finito (che è quello che fanno i tre comandi che ho postato).