画面で他のユーザーのコマンドを実行しようとしたときに問題が発生しました。
コマンドラインは次のとおりです。
sudo -u user123 screen -A -m -d -L screenlog.0 -S test123 ./my_program.
これが私がすることです:
sudo -u user123 bash -c screen -S test123 -p 0 -X stuff 'top^M'
しかし、私が得るものは次のとおりです。
[screen is terminating]
そして何もしません。
私は何が間違っていましたか?
ありがとうございます。
答え1
screen -S stuff
user で始まる既存のセッションがある場合は、user123
次のように既存のセッションでコマンドを実行できます。
sudo -u user123 screen -p 0 -X stuff 'top\n'