"Illegal variable name" 运行 "docker stop $(docker ps -a -q)" 时出错
"Illegal variable name" error when running "docker stop $(docker ps -a -q)"
我正在尝试通过 ssh 发出命令 docker stop $(docker ps -a -q)
,使用 Python 的 paramiko 包
stdin,stdout,stderr = ssh_client.exec_command('docker stop $(docker ps -a -q)');
print stderr.readlines()
我收到一个错误 Illegal variable name
。我尝试输入双引号 (""),转义 $, (, ) ... 但是 运行 没主意
听起来您正在使用 csh 作为 ssh 服务器上的登录名 shell。 Csh 不支持 $(...)
所以试试
ssh_client.exec_command('docker stop `docker ps -a -q` ');
Csh 示例:
# echo $(echo foo)
Illegal variable name.
#
我正在尝试通过 ssh 发出命令 docker stop $(docker ps -a -q)
,使用 Python 的 paramiko 包
stdin,stdout,stderr = ssh_client.exec_command('docker stop $(docker ps -a -q)');
print stderr.readlines()
我收到一个错误 Illegal variable name
。我尝试输入双引号 (""),转义 $, (, ) ... 但是 运行 没主意
听起来您正在使用 csh 作为 ssh 服务器上的登录名 shell。 Csh 不支持 $(...)
所以试试
ssh_client.exec_command('docker stop `docker ps -a -q` ');
Csh 示例:
# echo $(echo foo)
Illegal variable name.
#