O Wget funciona bem, mas você precisa citar o URL, já que ele não escapou.
ou seja,
wget 'http://download.osmand.net/download.php?standard=yes&file=Afghanistan_asia_2.obf.zip' -O Afghanistan_asia_2.obf.zip
A opção -O controla o nome da saída. Deve ser bastante fácil criar um script de shell que fará isso com uma lista de nomes de arquivos.
Editar: Você pode obter nomes de arquivos fazendo o download da página e fazendo uma pesquisa regex para o padrão de arquivo:
wget -nv 'http://download.osmand.net/rawindexes/' -O - | grep -oE "file=[A-Za-z0-9_]*.obf.zip" | cut -c6-
Que pode ser combinado com xargs e canalizado diretamente para o wget para fazer o download de cada arquivo:
xargs -I{} wget 'http://download.osmand.net/download.php?standard=yes&file={}' -O {}
Ou o seu comando completo, de uma linha (funciona no Cygwin, outro * nix pode exigir alguma reprodução com aspas e xargs):
wget -nv 'http://download.osmand.net/rawindexes/' -O - | grep -oE "file=[A-Za-z0-9_]*.obf.zip" | cut -c6- | xargs -I{} wget 'http://download.osmand.net/download.php?standard=yes&file={}' -O {}