
すべてのttyで実行したいシェルスクリプトがあります。
echo "Hello!"
これを.bashrcに追加しようとしましたが、ログインしている場合にのみ機能し、端末がttyでない場合でも実行されます。
答え1
ttyは何も実行しません。プログラム(またはカーネル)がコンテンツを表示するように制御できる(仮想)出力デバイス。
したがって、「すべてのttyで何かを実行したい」は不可能です。 TTYを占めるほとんどのものはシェルではないため、「その中で」シェルコマンドを実行することはできません。
ユーザーセッションごとに何かをしたいと思いますか?もしそうなら、loginctlは正しい選択かもしれません。とにかく尋ねる価値があります。新しい質問(現在の質問と非常に異なるため、ここにコメントを残したり、現在の質問に対する編集ではありません)達成するだから。 「ログインしているすべてのユーザーにどのようにメッセージを送信しますか?」たとえば、「自分のコンピュータでコンソールにログインしているすべてのユーザーに対してシステムXYZのWebログイントークンをどのように更新しますか?」はすべて良い質問です。