Nos comentários, parece que o arquivo test.txt vem de um sistema Windows e é um arquivo de texto do DOS. Você deve convertê-lo em um arquivo de texto Unix com dos2unix . Alternativamente, modifique o abaixo para usar tr -d '\r' <test.txt | head -n 3 no lugar de apenas head -n 3 test.txt .
Você tem um arquivo com linhas de texto e precisa invocar o script / programa main uma vez para as três primeiras dessas linhas:
head -n 3 test.txt | xargs -n 1 main -o
Se você realmente precisar que as aspas duplas façam parte do argumento (isso é incomum):
head -n 3 test.txt | xargs -I XX main -o '"XX"'
Para invocar main uma vez para cada linha no arquivo, use
xargs -n 1 main -o <test.txt