ho cambiato la shell da sh a bash perché sh non supporta gli array, successivamente ho creto l'array con le varie nazioni e ho fatto un ciclo for. Ogni volta che entra nel ciclo, il file "mappa" viene popolato con quello che matcha nell'array e quindi scarica e genera il file relativo a quella nazioen. In pratica fa da solo quello che faresti lanciando più volte lo script precedente.
Nello script precedente, togliendo i commenti alle righe FILESRC="***", quest'ultima variabile verrà popolata sempre con l'ultima stringa decommentata, quindi, se per esempio, l'ultima riga è la svizzera, anche se hai tolto il commento su tutte le righe precedenti, ti scaricherà sempre la svizzera.
Con lo script che ho modificato invece, la variabile FILESRC viene popolata sempre con la nazione successiva e quindi ti scarica e genera n mappe quante sono quelle presenti nell'array. Non so se mi sono spiegato ammodo, ho provato a essere abbastanza discorsivo ma mi rendo conto che non è semplicissimo da spiegare così.
Dimenticavo, le funzioni di error_check e tool_check, insieme alle variabili, le ho settate fuori dal ciclo.