Como o primeiro comentário disse, sem uma visão do seu "arquivo.txt", é difícil saber com certeza se estamos acertando.
Meu primeiro pensamento foi por que você não toma o caminho fácil? O > > irá acrescentar, então crie a única coisa, adicione o resto.
cat file.txt | grep 'Values a' | cut -d' ' -f9 > a.csv
cat file.txt | grep 'Values b' | cut -d' ' -f9 >> a.csv
cat file.txt | grep 'Values c' | cut -d' ' -f9 >> a.csv
cat file.txt | grep 'Values d' | cut -d' ' -f9 >> a.csv
Então eu me perguntei por que você gata em tudo
grep 'Values a' file.txt | cut -d' ' -f9 > a.csv
grep 'Values b' file.txt | cut -d' ' -f9 >> a.csv
grep 'Values c' file.txt | cut -d' ' -f9 >> a.csv
grep 'Values d' file.txt | cut -d' ' -f9 >> a.csv
Isso funciona, mas coloca as 4 coisas em novas linhas, em vez de valores separados por vírgula.
Então, concentrei-me em impedir que as novas linhas fossem inseridas e obter uma vírgula. O awk pode lidar com isso.
grep 'Values a' file.txt | cut -d' ' -f9 | awk '{printf $0 ","}' > a.csv
grep 'Values b' file.txt | cut -d' ' -f9 | awk '{printf $0 ","}' >> a.csv
e assim por diante. Isso funciona, mas logo antes de eu apertar "enviar" eu percebi que eu estava seguindo junto com você usando o corte e nós não precisamos. o awk pode selecionar a 9ª coisa.
grep 'Values a' file.txt | awk '{printf $9 ","}' > a.csv
grep 'Values b' file.txt | awk '{printf $9 ","}' >> a.csv
Isso funcionou em um pequeno caso de teste que eu fiz, talvez não no seu caso de teste.
Se eu estivesse repetindo os dados para criar um arquivo, provavelmente preferiria mantê-lo em linhas separadas, em vez de em um emaranhado grande e complicado como o outro recomendado. Então eu não acho que eu vá por um forro, quatro linhas que eu entendo são boas o suficiente.
Se você vai fazer mais trabalhos de shell como este, eu sugiro que você obtenha uma cópia do antigo livro Unix Power Tools. Tem muitos truques como esse.