请求密码时将别名命令移至后台

请求密码时将别名命令移至后台

我准备了一个别名来启动我的ightvnc查看器:

alias vnc='/usr/bin/xtightvncviewer MOC'

有效。它询问我密码并运行 vnc。但它阻止将下一个命令放在同一个终端窗口中,因此我尝试将进程移至后台。

当我像这样简单地添加&符号时

alias vnc='/usr/bin/xtightvncviewer MOC&'

它没有显示密码请求,当我输入密码时,它显示错误消息

mann@debian:~$ vnc
[3] 4460
mann@debian:~$ Connected to RFB server, using protocol version 3.8
Enabling TightVNC protocol extensions
Performing standard VNC authentication
p4ssw0rd
bash: p4ssw0rd: command not found

[8]+  Stopped                 /usr/bin/xtightvncviewer MOC

如何修改别名让它要求输入密码并进入后台呢?

答案1

如何执行此操作取决于密码的来源。

如果它是由用户交互提供的,那么你只需运行

/usr/bin/xtightvncviewer MOC

输入密码后,用户可以通过按 然后键入 将进程置于^Z后台bg %%

如果密码应该由脚本通过stdin或终端(使用expect或类似的)提供,那么您将整个管道放在后台:

echo password | /usr/bin/xtightvncviewer MOC &

相关内容