Problemas variáveis no SSH

Ei pessoal, estou tentando executar este código:

#!/bin/bash

sudo /usr/local/bin/sshpass -p pwd ssh -o stricthostkeychecking=no -p 11022 admin@$1.test.com<<EOI
i=1
while read line
do
 location="sudo sed -n ${i}p /Users/Shared/$1.txt"
 number="sudo sed -n ${i}p /Users/Shared/$2n.txt"
 my_array=("${my_array[i]}" $line)
 sudo cp /Applications/TEPS\ OS\ X\ Share\ Folder/MAIN\ IMAGES\ FOLDER\ ƒ/${location}${number} /Users/Shared/FYP/$number
 sudo sips -Z 256 /Users/Shared/FYP/$number /Users/Shared/FYP/$number
 ((i++))
done </Users/Shared/$2.txt
exit
EOI

basicamente, ele lê um arquivo de texto que fornece a localização de determinadas imagens e cria uma miniatura dessas imagens, que pode ser baixada posteriormente. O problema é que preciso do valor de $ i para definir os valores de $ location e $ number, mas quando defino a variável no loop while, as variáveis não são definidas. Eu tentei configurá-lo local e globalmente com aspas simples, aspas duplas, passando com o sshpass, exportando-o - Isso funciona como um teste, mas $ i é claro que desconhecido - tentei colocar colchetes, chaves, parênteses, escapar $, neste ponto, esgotei minhas idéias, provavelmente é algo incrivelmente simples, mas eu poderia usar um par de olhos novo, qualquer ajuda é muito apreciada!

EDIT: Obrigado a Charles Duffy por me ajudar a limpá-lo, então é isso que tenho agora:

 #!/bin/bash
        sudo /usr/local/bin/sshpass -p support ssh -o stricthostkeychecking=no -p 11022 admin@$1.noerrpole.com<<'EOI'
i=1
while read -r line
do
 location=sudo sed -n ${i}p "/Users/Shared/$1.txt"
 number=sudo sed -n ${i}p "/Users/Shared/$2n.txt"
 my_array+=( "$line" )
 sudo cp "/Applications/TEPS\ OS\ X\ Share\ Folder/MAIN\ IMAGES\ FOLDER\ ƒ/${location}${number}" "/Users/Shared/FYP/$number"
 sudo sips -Z 256 "/Users/Shared/FYP/$number" "/Users/Shared/FYP/$number"
 ((i++))
 exit
done <"/Users/Shared/$2.txt"
EOI

Mas agora $ 2 não estão sendo repassados para o loop, aqui está o que eu recebo de volta

1:bin Photo$ bash -x thumb npco2 20131216154714
+ sudo /usr/local/bin/sshpass -p support ssh -o stricthostkeychecking=no -p 11022 [email protected]
Pseudo-terminal will not be allocated because stdin is not a terminal.
SHPA_12-16-2013/
sed: /Users/Shared/n.txt: No such file or directory
cp: /Applications/TEPS OS X Share Folder/MAIN IMAGES FOLDER ƒ/ is a directory (not copied).
Warning: /Users/Shared/FYP/ not a valid file - skipping
Warning: /Users/Shared/FYP/ not a valid file - skipping
Error 4: no file was specified
Try 'sips --help' for help using this tool

Então, onde $ 2 deve ser igual a 20131216154714, está retornando uma string vazia como esta

sed: /Users/Shared/n.txt: No such file or directory

O comando correto seria

sed: /Users/Shared/20131216154714n.txt

O resto está falhando porque US $ 2 não foram repassados. Mais uma vez, obrigado pela ajuda!

questionAnswers(1)

yourAnswerToTheQuestion