强制SSH使用特定的shell

有没有办法强制SSH在远程端使用特定的 shell,无论用户shell是什么?

我尝试过的解决方案类似于:

ssh host.domain.com /bin/bash -c 'complicated,multi-line command'

但不幸的是,远程端的认shell负责解析“复杂的多行命令”部分,而且我很难将其转义为Bash和C shell用户.

我不相信这是可能的,至少对于基于openssh的系统.如果你有能力,一个更好的解决方案可能是sftp up一个shell脚本文件,然后用你发布的方法执行它.它的优点是可以最大限度地减少所需的转义量,但是会留下一个必须删除文件(可能是脚本的最后一步).

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...