パスワードを要求したときにエイリアスコマンドを背景に移動する

パスワードを要求したときにエイリアスコマンドを背景に移動する

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 &

関連情報