automating sessão telnet usando scripts bash

Estou trabalhando na automatização de algumas tarefas relacionadas ao telnet, usando scripts Bash. Uma vez automatizado, não haverá interação do usuário com o telnet. (ou seja, será totalmente automatizado)

os scripts são mais ou menos assim:

# execute some commands on the local system
# access a remote system with an IP address: 10.1.1.1 (for example)

telnet 10.1.1.1

# execute some commands on the remote system
# log all the activity (in a file) on the Local system
# exit telnet
# continue on with executing the rest of the script.

Existem 2 problemas que estou enfrentando aqui:

Como executar os comandos no sistema remoto a partir do script (sem interação humana

De minha experiência com alguns códigos de teste, pude deduzir isso quando otelnet 10.1.1.1 é executado, o telnet entra em uma sessão interativa e as linhas de código subseqüentes no script são executadas no sistema local. Como posso executar as linhas de código no sistema remoto em vez do loca

Não consigo obter um arquivo de log para a atividade na sessão de telnet no sistema local. O redirecionamento stdout que usei faz uma cópia no sistema remoto (não quero executar uma operação de cópia para copiar o log no sistema local). Como posso obter essa funcionalidade?