Salve a tutti!! Sto imparando a fare qualcosina in bash e ho scritto questo script:
[code]#!/bin/bash
if test -z “$1”
then
echo “nessun parametro passato”
exit
else
echo “creazione pdf in corso”
sleep 2
fi
man -t $1 | ps2pdf - $1.pdf
echo pdf creato nella cartella corrente
exit 0[/code]
vi scrivo per chiedervi aiuto su un problema che non riesco a risolvere. Vi pongo la mia domanda.
Come faccio a inserire in input a questo script pagine del manuale specificando la sezione
di a partenenza?? Ad esempio man 2 read. Grazie a tutti in anticipo !!
Ciao barty93,
vorresti che lo script prendesse tutto l’input dell’utente?
Io ho creato questa versione:
[code]#!/bin/bash
if -z “$1” ]; then
echo “Nessun parametro passato.”
exit 1
fi
echo “Creazione pdf in corso.”
sleep 2
man -t $@ | ps2pdf - $2_$1.pdf
echo “pdf creato nella cartella corrente.”[/code]
L’ho reso eseguibile, ho lanciato per prova un:
$ prova 1 read
e mi ha restituito un bel pdf.
Con questa versione c’è però il problema di dover ogni volta ricordarsi di inserire prima la sezione e poi il manuale.
È ancora migliorabile, ma per ora ha risolto un po’ di tuoi dubbi?
Oh si grazie mille questa era la mia idea!! :thanks:
Comunque come si può migliorare?? Se mi puoi dare delle linee guida
cosi ci provo io e in caso di difficoltà cercherò aiuto(sperando di no) :wow:
Io ho fatto questo:
[code]#!/bin/bash
if “$#” != 2 ]; then
echo -e “\nErrore. Controllare i parametri passati allo script.”
exit 1
fi
if $(($1 / 1)) != 0 ]; then
paragrafo=$1
pagina=$2
else
paragrafo=$2
pagina=$1
fi
echo “Creazione pdf in corso.”
sleep 2
man -t $paragrafo $pagina | ps2pdf - $paragrafo_$pagina.pdf
if $? -eq 0 ]; then
echo “pdf creato nella cartella corrente.”
else
echo “è stato riscontrato un errore nella creazione del pdf.”
exit 1
fi[/code]
e riesco a riconoscere qual è il numero nei due parametri passati allo script, a prescindere quale sia prima o dopo.
Svantaggi:
- non funziona con parametri diversi da due
- non riconosce se non esiste una pagina di manuale specifica, nel qual caso crea un pdf bianco. Es:
$ prova read 2
Però insomma se a uno interessa una pagina di manuale basta che prima se la guarda nel terminale e poi se la può stampare in pdf.
Meglio? 
Molto meglio grazie mille!!!