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

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

1
tty *デバイスの読み取り/書き込み方法
USB経由でコンピューターに情報を送信するデバイスがあります。アーチLinuxは、名前のファイル作成することによって、このデバイスを設定ttyUSB0中に/dev/。私はGTKtermこの着信情報を受信し、エミュレートされたターミナルウィンドウに表示するために使用してきました。 私の質問は、GTKtermこのttyUSB0ファイルの読み取り/書き込みを正確にどのように行うのか、そして同様の機能を実装する方法をどこから学ぶのか、ということです。つまり、最も基本的な形式では、文字をに書き込むにはどうすればよいのでしょうttyUSB0か、対照的に、バイトを受け取ってファイルに書き込むにはどうすればよいのでしょうか?
29 usb  tty 

3
ttyセッションとxorgセッションを切り替える方法
私のxorgセッションはtty1上にあり、ttyからコマンドを発行したい場合(何らかの理由でxorgセッションからは実行できないため)、たとえばCtrl+ Alt+ を押しF2てコマンドを入力します。ただし、xorgセッションがないため、最初から以外のttyからグラフィカルアプリケーションを起動することはできません。次に、xorgセッションが実行されているtty1に切り替えてセッションに戻るにはどうすればよいですか?
28 linux  xorg  tty 

5
bashが実行されているttyを取得する方法は?
このページで提案されている2番目の方法では、次のコマンドでbashが実行されているttyを取得します。 ps ax | grep $$ | awk '{ print $2 }' 確かにこれは少し怠け者であり、実行中のすべてのプロセスをリストして、そのうちの1つを抽出するだけです。より効率的ではないでしょうか(これが望ましくない効果をもたらすかどうかも尋ねています): ps -p $$ | tail -n 1 | awk '{ print $2 }' 参考までに、この問題に出くわしたのは、最初のコマンドで実際に2行(またはそれ以上)の行が生成される場合があるためです。これは$$、サブストリングとして含まれるPIDで実行されている別のプロセスがある場合、ランダムに発生します。2番目のアプローチでは、必要なことがわかっているPIDを要求することで、このようなケースを回避しています。
24 bash  tty  ps 

1
スクロールバックとスクロールバックバッファーとは正確には何ですか?
やなどのプログラムの「スクロールバック」や「スクロールバッファ」とは何ですか?bashまたscreen、tty、実行中のプログラム、stdin / stdout / stderrとはどのように関係していますか? これが私がこれまでに見つけた「scrollback」の唯一の定義です(archlinux wikiで): スクロールバックは、テキストコンソールに実装されている機能であり、ユーザーが戻って画面からスクロールしたテキストの行を表示できるようにします。これは、ビデオアダプタとディスプレイデバイスの間にこの目的のために作成されたバッファによって可能になります。スクロールバックバッファ。 しかし、これは私にとってより多くの質問を提起します: 「サブルーチン」や「機能」などの「機能」を意味しますか? このスクロールバックバッファ用のUnix標準またはAPIはありますか? 以下のようなプログラムの「スタック」でvimに発売screenに発売bashに発売されssh、これらのプログラムのスクロールバックバッファを制御している端末エミュレータ、に発売? また、スクロールバックをファイルscreenにダンプするのに使用しました。このファイルの上部には多くの空白があり、ターミナルエミュレータが表示する「ビュー」は、バッファの最後の数行にすぎないようです。 これはvim、親シェルのスクロールバックバッファに一時的にアクセスするため、プログラムがターミナルウィンドウ全体を「クリア」できるのはなぜですか? またはvim、親スクロールバックバッファーの上に何らかの方法でオーバーレイされる独自のスクロールバックバッファーを使用しますか?

2
端末の空のスペース/背景を、ASCII文字のランダムな(しかしきれいな)パターンに置き換えることはできますか?
コンテキストと質問 端末とシェル環境を色付けする方法はたくさんあります。などの個別のコマンドの出力lsとはgrep、また、色付けすることができます。直接関連するわけではありませんが、コンソールでメディアを再生するという概念は興味深いものですが、これはウィンドウシステム上のフレームワーク(ライブラリ)に依存しているようです。次の質問は、bashシェルとそのLinuxターミナルフレームワークでの実装とその基盤のみを対象としています。 2D ゲームのシーンのASCII「レンダリング」の次のモンタージュを検討してください。 これらは、ランダムに生成されたシーンではありません。私が選択したすべてのセグメントは、実際には、ASCII文字を使用してこのようなオブジェクトを表現するゲームの「草地」地形(樹木、低木、低木、花、草など)を表します。最後の4シーンは、ユーザーが作成したタイルセットを示しています。タイルセットは、基本的に色仕様のASCII文字のリマップです(詳細は簡単です。これは、視覚とパターン")。 モンタージュ共有のこれらのシーンの一般的な機能は次のとおりです。 最大で5〜6個の異なるASCII文字(カンマ、引用符、その他いくつか) 使用される2-4色 キャラクターのために 場合によってはキャラクターの背景について-最後の例は、パターンを作成するためのキャラクターをほとんどまたはまったく持たないカラーシェードの使用、つまりカラーモザイクの使用を示すためのものです。 現在VMにあるのはArch Linuxで、質問はディストリビューション固有のものではありませんが、ファイルをカスタマイズするためのドキュメントを調べました/etc/bash.bashrc。多くの説明がプロンプトの外観と一般的にすべての前景要素の構成に進むことがわかります。背景の設定に関する情報はほとんどありませんが、通常これらの設定やヒントなどの単色の場合を除きます。 # Background On_Black='\e[40m' # Black On_Red='\e[41m' # Red On_Green='\e[42m' # Green On_Yellow='\e[43m' # Yellow On_Blue='\e[44m' # Blue On_Purple='\e[45m' # Purple On_Cyan='\e[46m' # Cyan On_White='\e[47m' # White コンソールを使用するときに入力しなかった空/空白/背景の「スペース」、つまり「何でできているのか」を概念的に把握していません。いわば。特に、プロンプトに表示されず、エコーされるコマンドをラップするもの。アクティブな行で発生することに関してbash、「行指向」の方法で動作し、一部の操作がアクティブな行のクリアをトリガーすることを示すことができfor i in $(seq 1 $(expr $(tput lines) \* $(tput cols))); do …
23 bash  terminal  colors  tty 

2
ttyのボー速度を設定します
特定のtty(この場合はシリアルポート)のボー速度を設定するにはどうすればよいですか?使ってみた stty -F /dev/tty.iap ispeed 19200 しかし、Invalid argument9600(デフォルト)を除くすべての速度(2400、4800など)でエラーが発生します。を使用してCプログラムの速度を正常に変更できcfsetspeedます。ttysファイルのような別の場所で変更を加える必要がありますか?

2
パイプから読み取るときにawkが完全なバッファリングを行う理由
nmea文字列を送信するgpsデバイスに接続されたシリアルポートから読み取ります。 私の要点を説明するための簡略化された呼び出し: $ awk '{ print $0 }' /dev/ttyPSC9 GPGGA,073651.000,6310.1043,N,01436.1539,E,1,07,1.0,340.2,M,33.3,M,,0000*56 $GPGSA,A,3,28,22,09,27,01,19,17,,,,,,2.3,1.0,2.0*39 $GPRMC,073651.000,A,6310.1043,N,01436.1539,E,0.42,163.42,070312,,,A*67 GPGGA,073652.000,6310.1043,N,01436.1540,E,1,07,1.0,339.2,M,33.3,M,,0000*55 $GPGSA,A,3,28,22,09,27,01,19,17,,,,,,2.3,1.0,2.0*39 代わりにパイプから読み取ろうとすると、awkは入力をバッファしてからstdoutに送信します。 $ cat /dev/ttyPSC9 | awk '{ print $0 }' <long pause> GPGGA,073651.000,6310.1043,N,01436.1539,E,1,07,1.0,340.2,M,33.3,M,,0000*56 $GPGSA,A,3,28,22,09,27,01,19,17,,,,,,2.3,1.0,2.0*39 $GPRMC,073651.000,A,6310.1043,N,01436.1539,E,0.42,163.42,070312,,,A*67 GPGGA,073652.000,6310.1043,N,01436.1540,E,1,07,1.0,339.2,M,33.3,M,,0000*55 $GPGSA,A,3,28,22,09,27,01,19,17,,,,,,2.3,1.0,2.0*39 バッファリングを回避するにはどうすればよいですか? 編集:カイルジョーンズは、猫がその出力をバッファリングしているが、それは起こっていないようだと示唆した: $ strace cat /dev/ttyPSC9 | awk '{ print $0 }' write(1, "2,"..., 2) = 2 read(3, "E"..., …
23 awk  tty  serial-port 

5
sshを取得して信号を転送する
sshを介してシグナル(SIGINTが最も重要)を送信できるようにしたい。 このコマンド: ssh server "sleep 1000;echo f" > foo サーバーでスリープを開始し、1000秒後にローカルマシンのファイルfooに「f \ n」を入れます。CTRL-Cを押す(つまり、sshにSIGINTを送信する)と、sshは強制終了されますが、リモートサーバーのスリープは強制終了されません。リモートサーバーでスリープを終了させたい。 だから私は試しました: ssh server -t "sleep 1000;echo f" > foo しかし、stdinが端末でない場合、次のエラーが表示されます。 Pseudo-terminal will not be allocated because stdin is not a terminal. SIGINTはまだ転送されません。 だから私は試しました: ssh server -t -t "sleep 1000;echo f" > output しかし、fooの出力は「f \ n」ではなく「f \ r \ …
22 ssh  remote  tty  signals 

9
カーソルの点滅を止める方法
TTYblinkingでカーソルを停止するにはどうすればよいですか?(または他の場所)。 ほぼすべての場所でカーソルの点滅を止める1つのユニバーサル設定のボーナスポイント。
22 tty 

4
Ctrl + Alt + F#の再バインド/無効化仮想端末/コンソールの切り替え
CTRL+ ALT+ をバインドするアプリケーションがありますF7が、Linuxマシンはキーストロークをキャッチしているようです。 このキーを再バインド/無効にする方法はありますか?カーネルの再コンパイルは受け入れられる答えです。 問題のディストリビューションはFedora 16とUbuntu 11.10です。

2
GNU Screenのクリック時の奇妙な文字
GNU画面に小さな問題があります。GNUスクリーンセッションがRaspberryPiで実行されます。時々、私がそれに参加するとき、ターミナルをクリックすると(Fedoraでターミネーターを使用しています)奇妙な文字が書かれています。これらの文字はマウスの座標に依存します…GNU Screenに送信されたクリックイベントの誤ったデコードのようです。これらのキャラクターには kM#kM - Z3#Z3 - q-#q- 等… 私はそれが自分の問題だと最初に思ったttyので、RaspberryPiで新しいGNU Screenセッションを開いて、問題ありませんでした。 私がやったstty -aの両方のセッションでその差があった見ました。次に stty -g > ~/stty-good-settings、良いセッションでAを実行し、悪いセッションでそれをロードしましたstty `cat ~/stty-good-settings`(その後、値を比較し、設定が正常にロードされました)が、スクリーンセッションの1つで問題があり、もう一方ではありません! これが私のTERM価値(両方に同じ)、tty設定、端末に起因する場合、何が起こっているのかわかりません…
21 gnu-screen  tty  xterm 

4
仮想コンソールが完全に空白なのはなぜですか?
グラフィカルセッションから仮想コンソールにCtrl+ Alt+ F i(iを1-7および9-12で)で移動すると、完全に黒い画面が表示されます。F8でのみGUIが表示されます。他の人のまばたきさえありません。何かを入力すると、何も見えません。 問題は何ですか?どうすれば修正できますか? 私のシステム $ uname -a Linux pc09 3.13.0-36-generic #63-Ubuntu SMP Wed Sep 3 21:30:07 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux $ cat /etc/issue Linux Mint 17 Qiana \n \l $ lspci | grep VGA 01:00.0 VGA compatible controller: NVIDIA Corporation GK110B [GeForce GTX Titan Black] (rev …
19 tty 


2
JenkinsのDockerコンテナーでビルドを実行する方法
Jenkinsを使用して、DockerコンテナでC ++プロジェクトを構築しようとしています。Jenkinsでのビルド、またはJenkinsの外のコンテナでのビルドに問題はありません。 以下は私が試したものです。わかりやすくするために、ボリュームマッピングを省略しています。 事例1 次のコマンドは、シェルでビルドを正常に実行します。 docker run --rm --interactive=true --tty=true $IMAGE make ただし、Jenkinsで「シェルの実行」ステップとして実行すると、Dockerは次のエラーを返します。 cannot enable tty mode on non tty input 事例2 次のコマンドは前のものと似ていますが、対話機能を無効にします。 docker run --rm $IMAGE make Jenkinsはビルドを正常に実行できます。ただし、ビルドを中止すると深刻な問題が発生します。ビルドは直ちに中止としてマークされますが、コンテナはビルドが完了するまで実行を続けます。また、コンテナは終了後に削除されません。 シェルで実行すると、コマンドは正常にビルドされますが、コマンドを中断することはできません。また、コンテナは終了後に削除されます。 質問 JenkinsのDockerコンテナでビルドをきれいに実行し、ビルドを中止する機能を保持する方法を誰もが知っていますか? Docker呼び出しはスクリプト内にあり、簡単に抽出できないため、Jenkinsプラグインを使用することはオプションではありません。
18 tty  docker  pty  jenkins 

1
外部モニターのTTY
自宅でラップトップを使用する場合、通常、外部モニター、キーボード、およびマウスを使用して、ラップトップの画面を2番目のモニターとして使用します。これはすべて、バックエンドでxrandrを使用すると思われる素敵なGNOMEユーティリティを使用して簡単に設定できます。 時々、TTY経由でコンピューターを使うのが好きです。TTY1に切り替え(ctrl + alt + f1を使用)、外部モニターの解像度で外部モニターにttyを表示できるようにしたいと思います。むしろ、通常はラップトップ画面だけに表示されるか、両方のモニターに表示されますが、ラップトップ画面の解像度で表示されます。 とにかくUbuntu 10.10でこれをシームレスに行う方法はありますか? (それは問題ではないと思いますが、画面がから自動的に起動するように設定しました~/.profile)。

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