3 581
contributi
m (→In uno script) |
m (→In uno script) |
||
Riga 62: | Riga 62: | ||
=== In uno script === | === In uno script === | ||
Per controllare lo stato di un pacchetto (''nomepacchetto'') in uno script quindi è sufficiente controllare se viene restituito il nome del pacchetto oppure no: | Per controllare lo stato di un pacchetto (''nomepacchetto'') in uno script quindi è sufficiente controllare se viene restituito il nome del pacchetto oppure no: | ||
<pre>if [ "$(apt-mark showauto | <pre> | ||
# inserire il nome del pacchetto nella variabile | |||
pacchetto="nomepacchetto" | |||
if [ "$(apt-mark showauto "$pacchetto")" = "$pacchetto" ]; then | |||
echo "Pacchetto installato automaticamente" | echo "Pacchetto installato automaticamente" | ||
elif [ "$(apt-mark showmanual | elif [ "$(apt-mark showmanual "$pacchetto")" = "$pacchetto" ]; then | ||
echo "Pacchetto installato manualmente" | echo "Pacchetto installato manualmente" | ||
Riga 77: | Riga 81: | ||
Alternativamente si può controllare l'installazione con [[dpkg|dpkg-query]], contenuto in un pacchetto essenziale del sistema, in modo da usare soltanto una volta <code>apt-mark</code> per leggere gli stati, che è più lento di <code>dpkg-query</code>: | Alternativamente si può controllare l'installazione con [[dpkg|dpkg-query]], contenuto in un pacchetto essenziale del sistema, in modo da usare soltanto una volta <code>apt-mark</code> per leggere gli stati, che è più lento di <code>dpkg-query</code>: | ||
<pre> | <pre> | ||
# inserire il nome del pacchetto nella variabile | |||
pacchetto="nomepacchetto" | |||
# stato del pacchetto (eliminando il secondo carattere) | |||
stato=$(dpkg-query -f '${db:Status-Abbrev}' -W "$pacchetto" 2> /dev/null) && | |||
stato=${stato%?} || | |||
stato="" | |||
if [ "$stato" != "i" ]; then | |||
echo "Pacchetto non installato" | echo "Pacchetto non installato" | ||
elif [ "$(apt-mark showauto | elif [ "$(apt-mark showauto "$pacchetto")" = "$pacchetto" ]; then | ||
echo "Pacchetto installato automaticamente" | echo "Pacchetto installato automaticamente" | ||
contributi