タグ付けされた質問 「tty」

シリアルデータを非同期で送受信するデバイスの表現。

6
実行中のすべてのXディスプレイに通知を表示します
コマンドラインを使用して、実行中のすべてのXディスプレイに通知を表示したいと思います。(および実行中のコンソール) 何かのようなもの: notify-send-all 'Warning' 'Nuclear launch in 5 minutes, please evacuate' これを行うプログラムはありますか?そうでない場合、これはbashで実装できますか?

1
ttyからのXのスクリーンショット
Xvfbを使用して、アプリケーションを起動し、スクリーンショットを撮ることができます。 私が疑問に思っているのは、既存の(休止状態の)Xセッションからキャプチャする方法です。 ttyまたはover sshから発声します。 私が理解していることから、ウィンドウはマッピングされておらず、リソースを保持するために存在しません。仮想ウィンドウマネージャーで既存のウィンドウ、ワークスペースなどをマップしてスナップすることができるツールはありますか? または、おそらく、またはを使用libx11してスナップを使用および作成できますXShmCreateImageか?
15 x11  tty  screenshot 

4
文字列をttyに入れてコマンドを作成します
私はこれをどうにかして echo -n " command "> / dev / tty1 文字は表示され、カーソルは移動しますが、それらは「ゴースト」です。ヒットするとEnter、何も起こりません(標準入力ではありません)。 編集: 下のスクリーンショットの真ん中に、私がこれを使用する理由がわかります。(赤いキャプションが付いた行、黄色のキャプションが付いた行のすぐ下。)今のままでは、実際にはノートテキストを「編集」していません。新しいテキストを書くように求められます。これは、編集中の(実際には)ノートのテキストを置き換えます。したがって、古いテキストをttyに貼り付けるだけで改善できると考えました。ユーザーがEnterキーを押しても、変更は行われません。(このプログラムはPerl / MySQLにありますが、「Perlでこれを行う方法」よりも一般的な解決策を求める方が面白いと思いました。) 編集2: 以下は、以下のCコード(意図したとおりに動作します)を使用するPerlコードと、新しいスクリーンショットです。これにより、疑いの余地がないことがわかります。ノートテキストに-今回は古いテキストがあります。たとえば、タイプミスを修正したいだけの場合、ノートテキスト全体を再入力する必要はありません。 my $edit_note_text = $edit_note_data[2]; print BOLD, RED, " new text: ", RESET; system("writevt /dev/tty \"$edit_note_text\""); my $new_text = <$in>; $new_text = fix_input($new_text); my $set_text = "UPDATE notes SET note = \"$new_text\" WHERE id …
15 tty  io  stdin 

2
X11はカーネルとどのように対話し、ログインを実行しますか
Linuxカーネルとのテキストベースの対話について理解しているように、TTYデバイスの1つに接続してユーザー名の入力を求めるプログラムがinit起動getty(またはagetty)と呼ばれ/devます。この後、呼び出されたプログラムloginが実行され、ユーザーのパスワードの入力を求められ、正しい場合はユーザーの好みのシェル(bashまたはcsh)が起動されます。この時点で、bashはTTYデバイスを介してカーネルと対話します。 このログインプロセスはX11でどのように機能しますか?X11はTTYを介してカーネルと対話しますか?
14 x11  linux-kernel  login  tty  getty 

3
再起動後も保持されるようにコンソールのTTYフォントタイプを永続的に変更するにはどうすればよいですか?
Ubuntu 15.04 64ビットDesktop Edition(DebianベースのLinux)を実行しています。 sudo dpkg-reconfigure console-setupコマンドラインからデフォルトのコンソールフォントタイプをTerminusに変更するために使用しました。その直後に、コンソールのフォントがよりシャープなフォントに変更されました。 ただし、再起動後、Ctrl+ Alt+ F1を選択すると、選択した選択肢ではなく、元のチャンキーなスタイルのフォントが表示されたコンソールウィンドウが表示されます。 /etc/default/console-setupファイルには、私の選択肢に変更されているように見えます。 # CONFIGURATION FILE FOR SETUPCON # Consult the console-setup(5) manual page. ACTIVE_CONSOLES="/dev/tty[1-6]" CHARMAP="UTF-8" CODESET="guess" FONTFACE="Terminus" FONTSIZE="8x16" VIDEOMODE= # The following is an example how to use a braille font # FONT='lat9w-08.psf.gz brl-8x8.psf' 優先フォントを使用するようにコンソールフォントを永続的に変更するにはどうすればよいですか?

4
stdinは端末ではないため、擬似端末は割り当てられません
NCを持たないサーバーを介して自動SSHホッピングを設定しようとしています。 これはコマンドラインから機能します: ssh -A gateway ssh steve@target (公開鍵をSSHエージェントに追加しました)。 ただし、〜/ .ssh / configに追加しても次のことは行われません。 Host target User steveb ProxyCommand ssh -A gateway ssh steve@targetip $ ssh target Pseudo-terminal will not be allocated because stdin is not a terminal. ^CKilled by signal 2. 問題を強制しようとするの-tは面白いが役に立たない。 ProxyCommand ssh -A -t gateway ssh steve@targetip $ ssh …
14 ssh  rhel  configuration  tty 

2
ttyを閉じる方法
いくつかのttyを開きましたが、ttyを閉じるために使用するキーの組み合わせがわかりません。Arch Linuxを使用しています。

2
Login TTY over Audioデバイス(モールス符号など)を構成できますか?
私の日々の仕事で最も悲惨な側面の1つは、外の世界へのネットワークアクセスがない世界中の遠隔地に散在するマシンの問題を時折調査する必要があることです。ローカルスタッフがアクセスを提供するために3Gまたは同様のモデムをつなぐことができる場合もありますが、多くの場合、現場の信号の不足または技術的能力の欠如により不可能です。これらの場合、地元の技術者(または時には管理人)が私と一緒に仕事をするために利用できるものであれば何でも電話で支払う必要があります経験。多くの場合、資格のある技術者をサイトに連れて行くには、フライトをチャーターする必要があります。 「スラッシュ」と「バックスラッシュ」の違いを知らないviでファイルを編集して誰かと話すこと、セミコロンの代わりにコロンを生成するためにシフトを保持する方法は耐え難いほど痛いことを確認できます。「さて、今は波打つようなものに続いて、ある種の奇妙な線のようなものが表示され、それから別の波状なものが表示されます」。ああ、それは私が読んでいないエラーメッセージのようなもので私にビープ音を立てました。 基本的に、私は非常に遅い電話→端末変換器として驚くほど高いエラー率で現場の人を使用しています。中間者を切り取り、コンピューターのスピーカーとマイクを使用して、携帯電話を機械にかざすだけで、非常に古い学校の音響的に結合された「モデム」として使用するように技術に伝えるというアイデアがありました。コンピューターで端末プログラムを実行して、電話からLinuxマシンに送信可能な一連のトーンに回線を変換し、コマンドに戻すと、出力がトーンに変換されます電話など、非常に遅い端末で事実上私を提供します。モールス符号やOliviaModeなど、携帯電話の送信に耐えるデータを送信する方法がいくつかあります。 パッケージ全体に関する情報、またはこのソリューションを構築するために使用できるさまざまな部分として、またはこのタスクを実行する方法に関する他のアイデアを提供するためのパッケージに関する情報を期待していました。Googleは、伝送プロトコルとして使用される可能性のある前述の「OliviaMode」を除き、何の役にも立ちませんでした。
13 audio  prompt  tty 

2
`/ dev / console`は何に使用されますか?
この回答へのLinux:は、/ dev / ttyのと/ dev / tty0のは/ dev /コンソールとの違い ドキュメントから : /dev/tty Current TTY device /dev/console System console /dev/tty0 Current virtual console 古き良き時代に/dev/consoleは、システム管理者コンソールがありました。TTYは、サーバーに接続されたユーザーのシリアルデバイスです。現在 /dev/console、/dev/tty0現在の表示を表し、通常は同じです。あなたは追加することによって、例えば、それを上書きすることができます console=ttyS0しgrub.conf。その後、あなた/dev/tty0はモニターで/dev/consoleあり/dev/ttyS0ます。 「システムコンソール」では、仮想コンソールのデバイスファイルと/dev/console同じように、テキスト物理端末のデバイスファイルのように見え/dev/tty{1..63}ます。 「現在のディスプレイ/dev/consoleを/dev/tty0表し、通常は同じです」/dev/consoleということで、仮想コンソールのデバイスファイルでもあるように思えます。/dev/console以上のように思える/dev/tty0ようなより/dev/tty{1..63}(/dev/tty0現在アクティブな仮想コンソールで、のいずれかになります/dev/tty{1..63})。 なに/dev/console?それは何のために使われますか? ない/dev/consoleとして、Linuxカーネルに同じ役割を果たしている/dev/ttyプロセスのために?(/dev/ttyプロセスのプロセスセッションの制御端末であり、ptsで/dev/ttynある可能性があります。1〜63 n、またはそれ以上ですか?) 他の返信には次のように記載されています: カーネルのドキュメントでは/dev/console、5:1の番号が付けられたキャラクターデバイスとして指定されています。このキャラクターデバイスを開くと、コンソールのリストの最後のttyである「メイン」コンソールが開きます。 「コンソールのリスト」とはconsole=、ブートオプション内のすべてのものを意味しますか? 「/dev/console5:1の番号の文字デバイスとして」とは/dev/console、物理的なテキスト端末のデバイスファイル、つまりシステムコンソールであることを意味しますか?(しかし、私が上で引用した最初の返信は、物理的なテキスト端末ではなく、仮想コンソール/dev/consoleと同じであると言って/dev/tty0います) ありがとう。
13 linux  ubuntu  tty  console  pts 

2
pinentry-cursesを正しいttyで起動する方法は?
gpg-agent両方のPGP e SSH IDの管理に使用しています。エージェントは次のようなスクリプトで開始されます gpg_agent_env="$XDG_CACHE_HOME/gpg-agent.env" export GPG_TTY="$(tty)" if ! ps -U "$USER" -o ucomm | grep -q gpg-agent; then eval "$({gpg-agent --daemon | tee $gpg_agent_env} 2> /dev/null)" else source "$gpg_agent_env" 2> /dev/null fi これは、インタラクティブシェルを実行するたびに読み込まれます。このセットアップではすべてが正常に機能しますが、問題があります。私が言ってみましょう: ターミナルを開き(バックグラウンドでエージェントを起動)、作業を開始します しばらくして、2つ目の端末を開きます 2番目の端末でパスフレーズを入力する必要があるアクションを実行する この時点でパスフレーズのプロンプトgpg-agentが開始pinentry-cursesされますが、最初のターミナルでこれが実行され、実行中のもの(通常はテキストエディター)と出力が混合され、プログラムを再開したり、ピンエントリを停止したりできません(100%cpuの使用を開始します)。そして私はそれを殺さなければなりません)。 私はここで何か悪いことをしているに違いありません。誰もがこれを経験しましたか? 更新: 私はこれが唯一のように見えるSSHキー、ロックを解除するためのプロンプトのために起こる考え出しこの PGPキーのプロンプトは常に正しい(すなわち電流)のttyにオープンしている間に、。
13 tty  gpg  pinentry 

2
制御端末の本名を取得するにはどうすればよいですか?
制御端末の実際の名前(ある場合はエラー)をパス名として取得するにはどうすればよいですか? 「本名」とは、を意味/dev/ttyし、同じ端末を参照するために他の任意のプロセスで使用することはできません。可能な場合は、単純なシェルコード(以下の例のような)として、そうでない場合はC関数として、答えを好みます。 これは、標準入力がリダイレクトされても機能する必要があるので、ttyユーティリティを使用できないことに注意してください。標準入力に接続された端末のファイル名を出力するだけなnot a ttyので、このような場合はエラーにttyなります。 Linuxでは、以下を使用できます。 echo "/dev/`ps -p $$ -o tty | tail -n 1`" しかし、これは移植性がありません。POSIXによると、端末名の形式は指定されていません。 C関数に関してctermid (NULL)は/dev/tty、ここでは役に立たないを返します。 注:zshドキュメントによれば、 zsh -c 'echo $TTY' しかし、現在(バージョン5.0.7)は、標準入力と標準出力の両方がリダイレクトされると失敗します。 $ zsh -c 'echo $TTY > /dev/tty' < /dev/null /dev/pts/9 $ zsh -c 'echo $TTY > /dev/tty' < /dev/null > /dev/null /dev/tty

2
この `grep -v`が期待どおりに機能しないのはなぜですか?
grep -vクエリに関連する奇妙な問題があります。説明させてください: 私が使用する接続を表示するにはwho: $ who harry pts/0 2016-12-08 20:41 (192.168.0.1) james pts/1 2016-12-08 19:28 (192.168.0.1) timothy pts/2 2016-12-08 02:44 (192.168.0.1) tty私の端末の電流はpts/0 $ tty /dev/pts/0 $ tty | cut -f3-4 -d'/' pts/0 を使用して自分の接続を除外しようとしましたgrep -v $(tty | cut -f3-4 -d'/')。このコマンドの期待される出力はwho、接続なしでになります。ただし、出力は最も予期しないものです。 $ who | grep -v $(tty | cut -f3-4 -d'/') grep: a: …
12 command-line  grep  tty 


2
仮想端末で実行されているかどうかを検出しますか?
私はしたい自動ログインにtty1ログインにしてから使用しvlock、それをロックします。 現在の端末は、コンソール、仮想端末(例えばある場合にはどうすればバッシュから検出することができますtty1)私は置くことができるように、vlockにラインを.bash_profile、それが経由でログインする場合にのみ実行していますかtty1?

2
USB出力をミラーリングする方法はありますか?
現在、プロジェクトのプログラムを書いています。 これは、点字ディスプレイをUSB経由で接続し、brlttyと呼ばれるプログラムで制御する点字読み取りシステム用です。 このプロジェクトの要件の1つは、複数の点字ディスプレイを接続できることですが、マスターディスプレイだけがシステムを制御できます。 これを行う最も簡単な方法は、プログラムのbrlttyのすべてのインスタンスにコマンドを送信するのではなく、メインUSBに出力されるものを各USBポートにミラ​​ーリングすることだと思いました。 これは可能ですか?
12 usb  c  tty  output  mirror 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.