Uma solução é a seguinte:
#!/bin/bash
while read line; do
if [ "${line:0:10}" = "REM GENRE " ]; then
folder=$(echo "${line:10}" | tr -d '\n\r')
mkdir $folder
break
fi
done < file.cue
echo "Folder $folder has been created"
Testado com o arquivo de amostra que você anexou como comentário para esta resposta.
Explicação: No início, há um loop while, que, como você pode ver a partir de < file.cue, lê o file.cue e lê, uma por uma, as linhas do arquivo. A declaração if agora, a linha
if [ "${line:0:10}" = "REM GENRE " ]; then
significa: Se as 10 primeiras letras da variável 'linha' forem iguais a "REM GENRE", então ...
Quando a afirmação if é verdadeira, estamos na linha em que estamos interessados. No entanto, o que nos interessa nessa linha são os caracteres após a décima carta de $ line. A $ {line: 10}, significa tudo após as 10 primeiras letras da variável 'linha'.
Então, faço eco de tudo depois dos 10 primeiros caracteres e, com a ajuda de 'tr', eu cortei qualquer caractere de nova linha (que foi o que causou o problema, na verdade). Eu adiciono isso à variável 'pasta' e eu a crio.