> ssh -q root@$IP_ADRS -p 22 ' Тут кавычка открылась...
> cd $REMOTE_TMP_DIR
> REMOTE_SW_FILE_CHECK="`md5sum -c $opt_select_sw_file.md5`"
> COUNT_CHAR_IN_FILE="`ls $opt_select_sw_file | tr -d [:space:] | wc -m`"
> if [ "${REMOTE_SW_FILE_CHECK:$[$COUNT_CHAR_IN_FILE + 2]:2}" = 'OK' ]; then
...а вот тут закрылась, и потом открылась новая.
> echo 'Файл $opt_select_sw_file скопирован на сервер'
Тут и несколько раз дальше фокус повторяется.
Это я к тому, что, во-первых, пример, скорее всего, нерабочий (не вчитывался в суть). А во-вторых, открытие и закрытие кавычек можно использовать себе на пользу. Хотите, чтобы переменные сначала разворачивались в свои значения, а потом уже значения подставлялись в команду? Тогда не заключайте их в одинарные кавычки. Подробности, как обычно, в man sh.
$ echo 'foo $bar'"$PATH"'$foo bar'
Сколько здесь аргументов у команды echo? Что она выведет и почему?