如何在ubuntu 16.04中使用signify?

时间:2018-02-10 12:11:29

标签: bash shell ubuntu ssh

我正在尝试在Ubuntu桌面和另一个Ubuntu系统之间建立远程桌面连接。我想开发一个应用程序,因此有必要使用shell命令。

ssh -X or -Y username@server_ip

我知道这个命令是针对两个系统之间的可信和不可信连接,但是此处需要用户名才能连接,因此有必要向每个用户询问用户名和密码以进行连接。所以我创建了一个bash文件来获取用户的输入。它的名字是myscript.sh

#!/bin/bash 
read -p 'Username: ' uservar
read -sp 'Password: ' passvar
sleep 10

我想在另一个文件中使用这个变量值。我在下面写了代码和文件名terminal.sh。

#!/bin/bash<br>
xterm -e /file_path/myscript.sh
sshpass -p $passvar ssh -X $uservar@$remote_ip /usr/bin/xfce4-session

但此代码无效。我想在terminal.sh文件中使用myscript.sh用户输入值。一个人建议我使用signify。如何在这里使用表示?谁有人建议解决方案?提前谢谢。

1 个答案:

答案 0 :(得分:0)

通常,您应该使用ssh设置公钥/私钥认证。其他任何东西都是为了得到相同的结果。

在这种情况下,您必须将凭据(uid / pw)存储在某个位置才能在第二个脚本中使用它们。那可能是:

#!/bin/bash 
read -p 'Username: ' uservar
read -sp 'Password: ' passvar

并调用. myscript.sh,或将它们存储在文件中以供使用(这在安全方面有点问题)。

如果你真的无法设置你的p / p键,你应该把(如Inian建议的那样)把提示放在同一个脚本中。