O gato nunca lê do terminal?

3

Capítulo 43. O redirecionamento de entrada e saída de Unix Power Tools, terceira edição tem a dizer sobre o comando cat :

Standard input (stdin) normally comes from your keyboard. Many programs ignore stdin; you name files directly on their command line — for instance, the command cat file1 file2 never reads its standard input; it reads the files directly. But without filenames on the command line, Unix commands that need input will usually read stdin. Standard input normally comes from your keyboard, but the shell can redirect stdin from a file.

( ênfase meu)

Ok, mas acontece quando apenas escrevemos cat > filename na linha de comando? Não é gato lendo o stdin e armazena isso no arquivo "filename"? O trecho acima do livro está dizendo apenas que a forma particular de usar cat com um argumento FILE nunca é lida do stdin?

    
por Geek 24.07.2014 / 21:25

1 resposta

4

Isn't cat reading from the stdin and stores that that into file "filename"?

Sim, quando cat não possui nenhum argumento de nome de arquivo (ou se um dos arquivos é o caractere menos - ), ele lê stdin .

Talvez o uso da palavra "nunca" pelo livro seja um pouco enganador, porque:

Is the above excerpt from the book just saying that only the particular form of using cat with a FILE argument never reads from the stdin?

Sim, nessa instância específica, cat não tocará em stdin .

    
por 24.07.2014 / 21:29