Considere um shell como Bash ou sh. A diferença básica entre >e se >>manifesta em um caso em que o arquivo de destino existe: > trunca o arquivo para tamanho zero e depois grava; >> não truncar, ele grava (anexa) no final do arquivo. Se o arquivo não existir, ele será criado...