在 ubuntu 14.04 上找不到 spawn 命令

Nul*_*ter 4 ssh bash scripts 14.04

我正在使用 Ubuntu 14.04,我想使用 GeoIP(来自https://www.axllent.org/docs/view/ssh-geoip/)阻止 SSH 登录国家/地区明智,

请找到命令的输出:

$ spawn
spawn: command not found
Run Code Online (Sandbox Code Playgroud)

所以我已经安装了expect包但仍然无法正常工作:

apt-get install expect
expect is already the newest version
Run Code Online (Sandbox Code Playgroud)

我想执行以下脚本:

cat /etc/hosts.allow
sshd: ALL: spawn /usr/local/bin/sshfilter.sh %a
Run Code Online (Sandbox Code Playgroud)

你有什么想法吗?

hee*_*ayl 7

spawnexpect特定命令,即您需要spawn使用expect.

大多数情况下,您会使用expect脚本并spawn在其中使用脚本来启动新进程。

例如:

#!/usr/bin/expect -f
spawn ssh host
expect ....
Run Code Online (Sandbox Code Playgroud)

直接从终端:

% expect -c 'spawn whoami'
spawn whoami
Run Code Online (Sandbox Code Playgroud)

默认情况spawn下回显命令,因此在终端中输出。