将不同的值管道化为bash命令

时间:2016-06-07 14:50:31

标签: linux bash ssh raspberry-pi raspbian

我有一个标准命令,我从CL使用它来与远程主机(通常是Raspberry Pi)共享我的密钥。所以,使用ssh用户pi,我将我的id_rsa.pub发送到192.168.1.5。

cat ~/.ssh/id_rsa.pub | ssh pi@192.168.1.5 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

它工作正常...因为我事先清除了已知主机是安全的(使用ssh-keygen -R 192.168.1.5),我总是得到指纹警告我输入"是" (& enter)然后确认Pi的密码(& enter)。

但是,我尝试将其写入自动脚本(仅提供IP和密码),但我无法使其正常工作。到目前为止,我一直试图在命令前加上......的变体。

printf 'yes\n\PASSWORD\n' | SAME COMMAND AS ABOVE
yes | printf 'PASSWORD\n' | SAME COMMAND AS ABOVE

我认为这是所有重定向/管道系统的问题,但由于我偷了那个命令并大致了解它是如何工作的,所以我没有足够的经验来知道它为什么会摔倒。任何帮助将不胜感激!

0 个答案:

没有答案