使用paramiko访问远程计算机的用户级命令shell更改

时间:2018-03-08 15:54:36

标签: bash shell ssh tcsh

我使用一些使用paramiko库连接远程机器的代码。通过绑定到其中一个localhost端口的隧道ssh连接建立连接。远程计算机上的默认shell为tcsh,但我的代码要求它运行bash。我已经测试了sshing一些简单的命令,它工作正常。

$ ssh localhost -p 2222 'echo $0'
tcsh

要更改登录shell,我已经添加到我的.tcshrc文件中,后面两行:

setenv SHELL /bin/bash
exec /bin/bash --login

以下内容有效:

$ ssh localhost -p 2222
[user@remote ~]$ echo $0
/bin/bash

但不是以下内容:

$ ssh localhost -p 2222 'echo $0'

没有回应。与我想要使用的代码建立的与paramiko的连接相同。

目前我仅限于用户级解决方案,而不愿使用paramiko-using-code本身。还有什么我可以尝试的吗?

0 个答案:

没有答案