Cargue el archivo a través de ssh y ejecute el comando en la máquina remota

Cargue el archivo a través de ssh y ejecute el comando en la máquina remota

Estoy tratando de encontrar la forma más sencilla de cargar un archivo usando ssh y luego ejecutar un comando en la máquina remota dentro de la misma sesión ssh para un posprocesamiento, de modo que no tenga que iniciar sesión nuevamente. La carga debería, si es posible, mostrar algún indicador de progreso.

Hasta ahora examiné scp y rsync, y ambos no son capaces de ejecutar ningún enlace. (Podría usar el --rsync-pathparámetro para ejecutar algún scriptantesrsync) pero quiero hacer un posprocesamiento. ¿Hay alguna forma de abrir una sesión ssh, cargarla, ejecutar un comando y cerrarla nuevamente?

Respuesta1

Bueno, podrías canalizar todo a través de un sshcomando con a caten el otro extremo. Aquí subo un script de shell, lo hago ejecutable y lo ejecuto:

$ cat sayhi.sh | ssh myserver 'cat > ./remotehi.sh ; chmod +x ./remotehi.sh ; ./remotehi.sh'
hello, world!

Respuesta2

Es posible que desee el ControlMastermecanismo en ssh.

información relacionada