Togliere “a capo” da una lista

Poniamo di avere un file chiamato “elenco.txt” contenente la seguente lista:

[INSTALLATO, DIPENDENZA] gcj-4.3-base
[INSTALLATO, DIPENDENZA] gij-4.2
[INSTALLATO, DIPENDENZA] gij-4.3

In questo caso ad esempio una parte copiata dal file /var/log/aptitude

Per estrarre solamente i nomi dei file, togliendo tutti gli “a capo” è possibile usare la seguente sequenza di comandi:

cat elenco.txt | awk -F" " '{print $3}' | tr "\n" "&" | sed -e 's/&/ /g' > elenco2.txt

Il risultato dentro a elenco2.txt sarà come segue:

gcj-4.3-base gij-4.2 gij-4.3

Questo file sarà comodo per poterlo passare ad un eventuale aptitude con:

sudo aptitude purge $(cat eleco2.txt)

Comments are closed.