
Estoy intentando configurar una variable de entorno remoto explícitamente en un comando ssh:
ssh worker-2 "export OPENBLAS_NUM_THREADS=1; echo $OPENBLAS_NUM_THREADS"
Curiosamente, esto imprime solo una línea en blanco, pero cuando ejecuto el mismo comando localmente, imprime correctamente 1
.
Dado que estoy configurando la variable explícitamente, ¿por qué no funciona de forma remota?
Respuesta1
$OPENBLAS_NUM_THREADS
está siendo evaluado localmente bash
antes de enviarlo a su máquina remota.
Necesitas escapar de $
:
ssh worker-2 "export OPENBLAS_NUM_THREADS=1; echo \$OPENBLAS_NUM_THREADS"
o utilice comillas simples, que inhiben la evaluación de la variable bash:
ssh worker-2 'export OPENBLAS_NUM_THREADS=1; echo $OPENBLAS_NUM_THREADS'