Para obter toda a linha que começa com a :
grep '^a' infile.txt >a.txt
Para obter todas as linhas que não começam com um 'a':
grep '^[^a]' infile >bcd.txt # or grep -v '^a' infile.txt >bcd.txt
A expressão [^...] significa "qualquer caractere que não esteja neste conjunto de caracteres" e o conjunto contém um único a .
Ação combinada, usando awk :
awk '/^a/ { print >"a.txt"; next } { print >"bcd.txt" }' infile.txt
O programa awk aciona o primeiro bloco para qualquer linha que comece com a e o segundo bloco para todas as outras linhas (não as a lines, devido à instrução next no primeiro bloco). A instrução print >filename imprimirá a linha atual para o arquivo fornecido.