Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用Paramiko invoke_shell()执行的命令的输出已分页(在recv中获取“更多…”)_Python_Ssh_Paramiko_Channel - Fatal编程技术网

Python 使用Paramiko invoke_shell()执行的命令的输出已分页(在recv中获取“更多…”)

Python 使用Paramiko invoke_shell()执行的命令的输出已分页(在recv中获取“更多…”),python,ssh,paramiko,channel,Python,Ssh,Paramiko,Channel,我使用sendall() 我应该把整个输出都放在那里,但是我注意到在我收到的输出的最后一行,有一个--更多--。就像使用less命令时得到的一样 因此,通道仍在等待更多输出,因为缓冲区不是空的(预期会有更多输出),并且命令希望我按空格键以显示更多输出 频道永远在等待 如何一次完成整个输出?我不想要那个——更多-- 增加缓冲区大小没有任何区别。使用,而不是调用\u shell+发送所有 invoke_shell(带有默认参数)模拟交互式80x24终端。是什么使您正在执行的命令产生了一些奇特的功能,

我使用
sendall()

我应该把整个输出都放在那里,但是我注意到在我收到的输出的最后一行,有一个
--更多--
。就像使用
less
命令时得到的一样

因此,通道仍在等待更多输出,因为缓冲区不是空的(预期会有更多输出),并且命令希望我按空格键以显示更多输出

频道永远在等待

如何一次完成整个输出?我不想要那个
——更多--

增加缓冲区大小没有任何区别。

使用,而不是
调用\u shell
+
发送所有

invoke_shell
(带有默认参数)模拟交互式80x24终端。是什么使您正在执行的命令产生了一些奇特的功能,比如分页

def invoke_shell(self, term='vt100', width=80, height=24, width_pixels=0,
                 height_pixels=0):
def exec_command(self, command, bufsize=-1, timeout=None, get_pty=False):
exec_命令
(带有默认参数,即
get_pty=False
)使用非交互式终端。如何使命令(如果正确实现)避免分页

def invoke_shell(self, term='vt100', width=80, height=24, width_pixels=0,
                 height_pixels=0):
def exec_command(self, command, bufsize=-1, timeout=None, get_pty=False):

如果上述操作无助于删除
--更多--
,并且您正在连接到Cisco设备,则向该设备发送以下命令可能会有所帮助:

terminal length 0

另请参见。

这很有帮助。最后,我在invoke_shell()调用中更改了宽度和高度。此外,我不推荐您使用您的解决方案。这是一个黑客,不是一个合适的解决方案。