我意识到这可能是一个愚蠢的问题,但我一直在尝试遵循以下帖子中的建议https://stackoverflow.com/questions/16928004/how-to-enter-ssh-password-using-bash
然而,我遇到了一个问题。我用sudo apt-get install expect
安装了expect,但现在令人尴尬的是我无法弄清楚脚本解释器的位置。它似乎不在人们期待的正常路径中(即/bin/
或/usr/bin/
)。
它似乎已安装,因为$ expect
似乎有效,但我无法使用解释器(即我试图像#!/bin/sh/expect
所有其他人一样使用它并且它会出错)。
答案 0 :(得分:3)
您可以通过expect
列出dpkg -L
包提供的所有文件来找到该位置:
dpkg -L expect
或将其缩小为仅以expect
结尾的文件名:
dpkg -L expect | grep '/expect$'
或者如果位于典型的二进制目录中:
dpkg -L expect | grep -E '/s?bin/'
对于可执行文件,通过$PATH
的典型方法是使用:
which expect
或更好(考虑shell内部),但在这种情况下并非严格要求:
type -a expect
答案 1 :(得分:1)
whereis expect
...(你可能已经猜到了;)