Canali
![]() Ultime news
![]() Ultimi articoli
![]() Le ultime dal Forum |
![]() CorrelatiAnalisi di un comando 1In Linux si usa molto spesso un programma di compressione, gzip, che accetta come stdin un flusso di dati, e il suo utilizzo (dal punto di vista dei descrittori) è simile a tar: cat <file> | gzip -9 >file.gz In questa semplice riga di comando è racchiuso l'intero significato di questo articolo, c'è un pipe e una redirezione. Analizziamoli uno alla volta. cat <file> | gzip -9 Ricordando ciò che abbiamo detto sui file descriptors, in questo caso l'output di cat (ovvero il contenuto di <file>) viene esposto in stdout e indirizzato nello stdin di gzip attraverso il simbolo di pipe (|), che dà il nome alla funzione, per la compressione a livello massimo con l'opzione -9. >file.gz È una redirezione: per default gzip genera l'archivio compresso nel suo descrittore 1, ovvero l'output standard (non a caso è chiamato stdout). Quindi usiamo una redirezione, con il carattere >, per riversare il flusso di dati in output in un file su disco. [7] [11] Analisi di un comando 2Questo è più complesso, e lo analizzeremo passo per passo prima di concludere a che cosa serve. Tralasciando il costrutto for..do..done, qui abbiamo tutto: pipe e redirezioni. Per ogni modulo module (ovvero, file che hanno estensione .ko) nella directory dei moduli del kernel corrente, ne estraiamo il nome con echo $(basename $module) Che viene poi mandato come standard input di sed, dove ne filtriamo l'estensione con sed 's/\.ko//g' E l'output di sed, ovvero il nome del modulo con l'estensione rimossa, viene accodato nel file modules.list della directory corrente. Potete poi vedere i contenuti di modules.list con un semplice ![]() Appendice: "here documents" ![]() Esempi con i descrittori Segnala ad un amico |
© Copyright 2025 BlazeMedia srl - P. IVA 14742231005