Puedes hacerlo usando el tee
comando:
telnet $someIp | tee -a -i someFile
Expect tiene un medio programático para iniciar y detener la grabación (o inicio de sesión). Dado un argumento de nombre de archivo, el log_file
El comando abre el archivo y comienza a grabar en él. Si ya hay un archivo de registro abierto, primero se cierra el archivo anterior.
La grabación se realiza agregando al archivo, por lo que si algo se ha almacenado previamente en el archivo, permanece. Para empezar de nuevo, usa el -noappend
bandera.
Puede ahorrar espacio desactivando el registro cuando no es necesario. Esto se logra llamando a log_file
sin argumentos. Por ejemplo, el siguiente fragmento comienza a grabar, realiza algunas E/S, detiene la grabación, realiza algunas E/S más y luego comienza a grabar de nuevo.
expect . . . ; send
# start recording
log_file telnetlog
expect . . . ; send
# stop recording
log_file
expect . . . ; send
# start recording
log_file telnetlog
expect . . . ; send
De forma predeterminada, log_file
registra sólo lo que el usuario ve. Si el log_user
se ha invocado el comando para suprimir la salida de un programa generado, log_file no registra la salida suprimida ya que el usuario tampoco la ve. El log_file
puede registrar la salida suprimida usando el -a
bandera (para "todas las salidas").
log_file -a log
Como antes, este registro se puede desactivar emitiendo log_file sin argumentos. Para volver a registrar solo lo que ve el usuario, invoque log_file sin -a.
log_file -a log
expect . . . ; send . . .
log_file log
Referencia:Exploring Expect