cat < file
imprime o conteúdo do arquivo em stdout.
cat > file
lê 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?