Filtro (Unix): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m typo
leggera riorganizzazione
Riga 7:
Tuttavia, in tali sistemi operativi, i filtri sono molto meno usati che in Unix, e molti utenti non sanno nemmeno che esistono.
 
=== Filtri comuniche operano su input di tipo testo ===
 
Molti filtri sono usati per manipolare il testo e molti di questi applicano le proprie regole riga per riga, ecco alcuni tra quelli più comunemente usati:
Alcuni programmi comunemente usati come filtro sono:
 
* [[cut (Unix)|cut]] (seleziona- estrae parti di ogni riga)
* [[grep]] (trova- estrae le linee inche uncontengono filecerte parole e/o inche unrispondono flussoa dicerte daticaratteristiche con(vedi certe[[espressioni caratteristicheregolari]])
* [[head]] e- [[tail]]riporta soltanto le prime righe
* [[sort (Unix)|sorttail]] (ordina- riporta soltanto le ultime righe)
* [[sort (Unix)|sort]] - ordina le righe (quindi restituisce tutto l'input, dopo averlo ordinato)
* [[uniq]] (elimina i duplicati)
* [[uniq]] - elimina le righe ripetute (spesso usato insieme a [[sort (Unix)|sort]]
* linguaggi di scripting come
* Programmi come [[awk]] e [[sed (Unix)|sed]] possono essere usati per costruire filtri abbastanza complicati, in quanto programmabili e pensati espressamente per manipolazione di file di testo. Per operazioni complicate possono essere usati anche [[scripting|linguaggi di scripting]] come [[perl]], [[php]], [[python]] o shell programming come [[sh (Unix)|sh]] e [[bash]].
* [[comm]]
* [[expand (Unix)|expand]]
* [[fold]] (- spezza su più righe in output le righe in input troppo lunghe)
* [[compress]]
* [[fold]] (spezza su più righe in output le righe in input troppo lunghe)
* [[nl (Unix)|nl]]
* [[pr (Unix)|pr]]
* [[split (Unix)|split]]
* [[stringstee (Unix)|tee]]
* [[tee]]
* [[tr (Unix)|tr]]
* [[wc (Unix)|wc]]
* [[awk]] e [[sed (Unix)|sed]] - questi possono essere usati per costruire filtri abbastanza complicati, perché sono in realtà degli interpreti di programmi ([[scripting|script]]) scritti in un linguaggio pensato espressamente per la manipolazione dei file di testo.
* [[gzip]]/[[gunzip]], [[compress]]/[[uncompress]], [[bzip2]]/[[bunzip2]]
 
Per operazioni ancora più elaborate possono essere usati anche [[scripting|linguaggi di scripting]] come [[perl]], [[php]], [[python]] o shell programming come [[sh (Unix)|sh]] e [[bash]], ma in questi casi la funzionalità di filtro non è quella principale del programma.
 
== Filtri che operano su qualsiasi formato di input (binari) ==
 
* [[gzip]]/[[gunzip]], [[compress]]/[[uncompress]], [[bzip2]]/[[bunzip2]] - compressione file
* [[strings]] - estrazione di stringhe da file binari
* I programmi di manipolazione immagini della suite [[netpbm]]