Andrea Beggi

Osservazione, ipotesi, cimento.

Reindirizzamento e shell dei comandi

A T T E N Z I O N E ! Questo post ha piu' di sei mesi. Le informazioni contenute potrebbero non essere aggiornate.

I comandi impartiti nella shell di Windows ricevono l’input dai parametri specificati al momento della loro chiamata, e mandano il proprio output e gli eventuali errori alla finestra della console. E’ possibile ricevere l’input da un file o dal risultato di un altro comando, e mandare l’output ad un’altra destinazione, ad esempio un file, un altro comando, o la stampante. Anche gli errori possono essere dirottati verso un’altra destinazione.

Questo Ŕ lo schema del reindirizzamento

Sintassi Risultato
comando1 | comando2 l’output di comando1 viene utilizzato come input da comando2
comando < file comando riceve il suo input da un file
comando > file comando invia il suo output a file, sovrascrivendolo se esistente
comando >> file analogo al precedente, ma il risultato di comando viene aggiunto alla fine del file, se esso esiste
comando < file1 > file2 ottiene l’input da file1 e manda l’output su file2
comando < file1 >> file2 ottiene l’input da file1 ed aggiunge l’output a file2
comando 2> file indirizza a file tutti gli eventuali errori (con >> aggiunge)
comando > file 2>&1 sia l’output che gli errori vengono inviati a file

10 Commenti

Barbara | #

Oddio che roba complessa… chiedo troppo se mi fai un’esempio a prova d’idiota (quale mi sento a volte leggendoti ) sul possibile utilizzo di questo schema ?

Andrea | #

Barbara: ecco alcuni esempi:
dir | find “.exe” (trova tutte le estensioni .exe)
sort < nomi1 > nomi2 (legge nomi1, lo ordina e scrive nomi2)
type filelungo | more (visualizza una pagina alla volta di filelungo)

theo | #

Azz funziona anche 2>? Come sugli OS seri? ­čÖé

macbirra | #

andre, ma questa Ŕ roba di ventanni fÓ… nessuno usa pi¨ queste cose, se non i programmatori, una volta invece era diverso… (Ŕ triste vedere come sia facile ora per tutti usare un computer, quando “giustappunto ventanni fa” o avevi il camice bianco o non ti facevano nemmeno avvicinare)

Ti propongo di scrivere un tutorial sui comandi interni del dos… o anche sugli esterni, scegli tu.

Barbara | #

Grazie mille Andrea, davvero gentilissimo

theo | #

SarÓ che sono uno schifoso pervertito ma io faccio ancora un sacco di cose a mano. E’ pi¨ veloce e con un po’ di fantasia anche divertente. ­čśÇ
Cmq, correggimi Andrea se sbaglio, per quanto possano sembrare comandi dos, non lo sono. E’ la shell di windows, inadeguata (imho) per un sistema operativo serio ma sempre meglio di quella del dos.

Andrea | #

Chiamarli comandi DOS Ŕ sicuramente riduttivo. Comunque M$ sta facendo grossi sforzi: giÓ Windows Server 2003 Ŕ quasi completamente “scriptabile” da riga di comando; pare che la nuova versione del S.O. server avrÓ anche una modalitÓ “solo console” senza interfaccia grafica.
Sono comandi poco conosciuti, ma si possono fare pi¨ cose di quanto comunemente si creda.

Skop | #

Concordo e ringrazio il buon Beggi, per le pillole di memoria che aiutano a rinfrescare comandi sempre utili. E’ vero, le interfacce grafiche oramai hanno il sopravvento, ma la potenza di una shell Ŕ difficilmente avvicinabile. Percui grazie!

SALuti
JS