Sì, oppure, se non sono agganciate a una console ma ad un file, il buffering può essere di altro tipo (in particolare per utility per cui la riga non ha un valore particolare - ad esempio, cat).
Non è strano, è così... se tu da riga di comando dai "cat" senza argomenti questo ti risputerà quello che scrivi in eterno, a meno che tu non dia un EOF.Adesso però ho questo dubbio:
Quando finisce la riga viene elaborata e viene sputato l'output1, quando si raggiunge EOF (fine file) il programma esce
Cosa significa? Che senza un EOF il programma non termina, cioè inserendo con un Enter, ottengo l'output ma il programma continua a girare. Mi sembra molto strano..
Sta in attesa di stdin. Però attenzione, se usi questi comandi in una pipeline - ad esempio:Ogni volta che in passato ho usato sequenze di comandi a console con solo Enter questi poi restavano caricati accumulandosi in sequenza fino alla mia uscita dalla console?? O forse vuol dire semplicemente che esso resta in attesa di ulteriore line buffered stdin? (In tal caso allora sarebbe tutto chiaro.)
qui i comandi naturalmente terminano, dato che l'input dell'uno è collegato all'output del precedente, e quindi termina quando il comando precedente termina. cat, terminati file1.txt e file2.txt, esce, chiudendo lo stream di output - per cui sed legge EOF e termina, chiudendo lo stream di output; eccetera.codice:cat file1.txt file2.txt | sed 's/pippo/pluto/g' | grep 'ciao' | tail


Rispondi quotando
(quella sui virus iniettati in file l'ho messa nel mio archivio digitale)

mi linkeresti la cosa?
