cat < fileimprime o conteúdo do arquivo em stdout.
cat > filelê stdin até que Ctrl+ Dseja detectado e o texto de entrada seja gravado no arquivo .
cat <> file, pelo menos na minha versão do Bash, imprime o conteúdo do arquivo com satisfação (sem erros), mas não modifica o arquivo nem atualiza o carimbo de data / hora da modificação.
Como o padrão Bash justifica o aparentemente ignorado >na terceira declaração - e, mais importante, está fazendo alguma coisa?