# match_max 1000000000
set timeout 60
spawn ssh -o "StrictHostKeyChecking no" "$username@$hostname"
match_max 1000000000
如果在我使用 ssh 之前给出了 match_max 选项,我不会将完整的输出输入到 expect_out(buffer)
中,但是如果我在 SSH 之后给出相同的选项,我会得到正确的结果。
此外,如果我在第一种情况下使用 -d 选项,我会得到完整的输出。为什么?
此外,我如何检查为我的 Linux 系统设置了多少缓冲区?我寻找 limit
命令但找不到它。
关于 match_max
命令的 expect 手册页如下所示
match_max [-d] [-i spawn_id] [size]
defines the size of the buffer (in bytes) used internally by expect. With no size argument, the current size is returned. With the -d flag, the default size is set. (The initial default is 2000.) With the -i flag, the size is set for the named spawn id, otherwise it is set for the current process.
这正是您所观察到的(因为未指定 -i
)。
我是一名优秀的程序员,十分优秀!