我准备了一个别名来启动我的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 &