GNU screen その3
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2005/03/21(月) 07:24:04前スレ
screenってどうよ http://pc.2ch.net/test/read.cgi/unix/1001966406/
GNU screen その2 http://pc5.2ch.net/test/read.cgi/unix/1048030339/
GNU screen その3 http://pc5.2ch.net/test/read.cgi/unix/1087436430/
0110名無しさん@お腹いっぱい。
2005/06/04(土) 21:53:33遅すぎ。俺のはほとんど変わらなかったぞ。
model name : Intel(R) Pentium(R) III CPU - S 1266MHz
MemTotal: 514512 kB
screenなし
yes 0.00s user 0.00s system 0% cpu 0.200 total
screen -c /dev/null
yes 0.00s user 0.00s system 0% cpu 0.234 total
0111110
2005/06/04(土) 21:54:30teraterm 148 x 58
0112107
2005/06/04(土) 22:22:48ちょっと今 top でみてみたら負荷のほとんどが Xorg だった。
多分 screen の場合はスクロールの際に全画面再描画してるからだと思う。
0113107
2005/06/04(土) 22:24:250114名無しさん@お腹いっぱい。
2005/06/04(土) 22:41:22yes 0.00s user 0.00s system 1% cpu 0.321 total
screen -c /dev/null
yes 0.00s user 0.00s system 0% cpu 1.340 total
orz
0115110
2005/06/04(土) 22:42:44screenさんはそんなに馬鹿じゃないぞ
0116名無しさん@お腹いっぱい。
2005/06/04(土) 23:21:55関係ないかな。
文字コードとか、内部仮想画面もってたりとか、いろいろあるからだろうけど、
でも高速化の余地は多いにありそうだな。
0117名無しさん@お腹いっぱい。
2005/06/04(土) 23:24:13TeraTermでなんでXが出てくるんだ?
0118名無しさん@お腹いっぱい。
2005/06/04(土) 23:30:360120名無しさん@お腹いっぱい。
2005/06/05(日) 00:02:14漏れは16dotフォントで86x46だぞ。
0121名無しさん@お腹いっぱい。
2005/06/05(日) 00:09:220122107
2005/06/05(日) 01:22:24kterm を xterm に変えて同じことをやってみた。
したら screen の有無でそれほど変わらんかった。
kterm は screenなしだと xterm より速いけど、
screenありだと著しく遅くなる。
どうも screen on kterm だと X の描画で 1行ずつスクロールしてる様子。
xterm だと数行毎に飛ばして描画してるみたい。
xterm で screen -x して kterm と同時に見てみるとよく分かる。
screen なしの kterm はどう描画しているのかよく分からない。
xterm -geometry 150x61 での結果
screenなし
0.64 real 0.00 user 0.00 sys
screen -c /dev/null
0.78 real 0.00 user 0.00 sys
0123名無しさん@お腹いっぱい。
2005/06/05(日) 01:41:35ktermでそれだけ遅くなるのは意味不明だな。xtermの場合は遅くな
っていないから、screenの処理が重いのが原因ではない。screenあ
りの場合となしの場合で出力が変わらないので、ktermの描画時間
も同じはずなのだが。
0124名無しさん@お腹いっぱい。
2005/06/05(日) 14:15:180125名無しさん@お腹いっぱい。
2005/06/05(日) 15:40:35yesの出力にエスケープシーケンスは入ってないし必要ない。
0126名無しさん@お腹いっぱい。
2005/06/05(日) 15:57:500127名無しさん@お腹いっぱい。
2005/06/05(日) 17:22:42なにいってんの?
0128107
2005/06/05(日) 23:06:42screen なしの kterm も数行毎に飛ばして描画してるみたい。
なんで screen on kterm で 1行毎に描画するかが分からない。
ちょうど kterm の読み込みより screen の出力が遅くなってるのかな。
0129名無しさん@お腹いっぱい。
2005/06/06(月) 00:30:10CPUはPentium4 2.66GHz、メモリは1GB。性能的には申し分ないのだが。
別個にグラフィックボードを装備せずにオンボードのやつを使っているから遅いのかな。
Xは24bpp。
0130名無しさん@お腹いっぱい。
2005/06/06(月) 00:31:09使ってる端末によってかなり違うと思うよ。
0131129
2005/06/06(月) 01:51:340132名無しさん@お腹いっぱい。
2005/06/06(月) 09:28:570133名無しさん@お腹いっぱい。
2005/06/06(月) 10:14:020134名無しさん@お腹いっぱい。
2005/06/07(火) 01:16:14制御するエスケープシーケンスがあるよ。
echo "\033[?4h" でオン(1行毎に描画)
echo "\033[?4l" でオフ(まとめて描画)になる。
これ試してみて。
0135名無しさん@お腹いっぱい。
2005/06/07(火) 01:38:48termcapもしくはterminfoのエントリ名は何?
0136135
2005/06/07(火) 01:42:08l Jump (Fast) Scroll (DECSCLM)
ってやつね。
Xterm Control Sequencesに載ってた。
0137129
2005/06/07(火) 03:48:38xterm without screen 4.828
mlterm without screen 0.210
kterm without screen 4.992
rxvt without screen 0.012
pterm without screen 0.085
xterm with screen 0.287
mlterm with screen 0.272
kterm with screen 0.401
rxvt with screen 0.031
pterm with screen 0.073
#まとめて描画
xterm without screen 0.263
mlterm without screen 0.186
kterm without screen 0.187
rxvt without screen 0.012
pterm without screen 0.078
xterm with screen 0.240
mlterm with screen 0.283
kterm with screen 0.417
rxvt with screen 0.034
pterm with screen 0.074
* rxvtだとやばいほど速い!
* screenを使うと違いがほぼなくなっている。
0138名無しさん@お腹いっぱい。
2005/06/07(火) 05:22:080139名無しさん@お腹いっぱい。
2005/06/07(火) 08:37:320140名無しさん@お腹いっぱい。
2005/06/07(火) 10:31:14mltermで0.6秒になってないが。
0141129
2005/06/07(火) 13:45:470142名無しさん@お腹いっぱい。
2005/06/07(火) 19:47:36から
escape ^z^z
に、変換したのですが
以前、C-a C-aで行えていた1個前に作業していたスクリーンへの移動ができなくなりました
C-z C-aでは、何もおきなくて
C-z C-zでは、カレントスクリーンのプログラムがスリープしてしまいます
この場合、どのようなキーバインドになっているのでしょうか?
0143名無しさん@お腹いっぱい。
2005/06/07(火) 20:19:350144名無しさん@お腹いっぱい。
2005/06/07(火) 20:50:140145名無しさん@お腹いっぱい。
2005/06/07(火) 21:03:11escape ^aa
0146名無しさん@お腹いっぱい。
2005/06/08(水) 01:58:13洩れもそう設定してるから、>>142の言う操作は、C-z C-z でできてる。
escape ^z^z の場合は、どうやるんだろね?
0147名無しさん@お腹いっぱい。
2005/06/08(水) 03:18:55デタッチしたら全てのプロセスは生きたままですよね?
そのまま、screen で新しくscreenを起動しても前のscreenはきえません
ですので、前のscreenを復元してkで1つずつころしていきます
一気に殺すことはできないのでしょうか?
0148名無しさん@お腹いっぱい。
2005/06/08(水) 05:28:140149名無しさん@お腹いっぱい。
2005/06/08(水) 08:25:23デフォルト起動したscreenで「^A ?」した時の表示と見比べると
分かるけど、「other」が消えてる。だからその機能は使えなくなる。
0150名無しさん@お腹いっぱい。
2005/06/08(水) 08:59:57C-z :other RET
0151名無しさん@お腹いっぱい。
2005/06/08(水) 19:11:05そうなのか。しらなんかったので勉強になった。
やっと>>143の逝ってる意味が理解できたYO。
0152名無しさん@お腹いっぱい。
2005/06/09(木) 12:17:40スレ違いだったら、誘導お願いします。
zsh+screenで使っているんですが、lsすると、"動画/"とちゃんと表示されるディレクトリが、
lsの後、tabで補完させると" 芦莚"と文字化けしてしまいます。
同時に、補完する時に下に出る一覧だと、"\M-F\M-|\M-K\M-\\M-8\M-l"となってしまいます。
どなたかアドバイス下さい。よろしくお願いします。。。
0153名無しさん@お腹いっぱい。
2005/06/09(木) 12:22:54それ、screenなしでも同じじゃないの?
0154名無しさん@お腹いっぱい。
2005/06/09(木) 14:53:110155名無しさん@お腹いっぱい。
2005/06/09(木) 14:57:520156名無しさん@お腹いっぱい。
2005/06/09(木) 14:59:350157名無しさん@お腹いっぱい。
2005/06/09(木) 15:28:340158名無しさん@お腹いっぱい。
2005/06/09(木) 15:29:050159名無しさん@お腹いっぱい。
2005/06/09(木) 22:49:00MINIX時代から日本語ファイル名使ってるけど、無問題。
頭に補完用の英数文字付けとけば便利。
00読め.txt
js1dscギレン総帥.log
…てな具合。
0160名無しさん@お腹いっぱい。
2005/06/10(金) 02:05:130161名無しさん@お腹いっぱい。
2005/06/10(金) 02:12:18たまにこういうファイル名はあって、何なんだろうと思ってたんだけど
謎が解けますたんだよもん
0162名無しさん@お腹いっぱい。
2005/06/10(金) 03:20:590163名無しさん@お腹いっぱい。
2005/06/10(金) 04:41:00って、まえに、どこかで話題になってなかった?
#すれ違いスマソ。
0164名無しさん@お腹いっぱい。
2005/06/10(金) 07:04:52それってlsなんかで先頭に表示されることを期待してるんじゃなかったのか!?
00README.1ST とか。
0165名無しさん@お腹いっぱい。
2005/06/10(金) 09:56:430166107
2005/06/10(金) 23:07:13遅くなりましたが、試してみたので報告します。
結論から言うとそれが原因ではないようです。
実験の条件は前と同様、
kterm -geometry 150x61 で
screen は screen -c /dev/null としました。
試験用のコマンドだけ変えて、
time jot -p 100 1000 (jot は FreeBSD 5.4-RELEASE-p1 のものです)
としました。
条件の記述では以下の記号を用いる。
l → echo '\e[?4l'
h → echo '\e[?4h'
Pl → echo '\eP\e[?4l\e\'
Ph → echo '\eP\e[?4h\e\'
(zsh の echo を使っている)
0167107 (実験結果)
2005/06/10(金) 23:08:00jot -p 100 1000 0.01s user 0.02s system 7% cpu 0.482 total
なにもしないとき(screen あり)
jot -p 100 1000 0.02s user 0.04s system 0% cpu 12.256 total
l としたとき(screen なし)
jot -p 100 1000 0.00s user 0.04s system 7% cpu 0.523 total
h としたとき(screen なし)
jot -p 100 1000 0.02s user 0.04s system 0% cpu 17.832 total
l として screen の中で l としたとき
jot -p 100 1000 0.05s user 0.01s system 0% cpu 12.451 total
l として screen の中で h としたとき
jot -p 100 1000 0.03s user 0.03s system 0% cpu 12.445 total
h として screen の中で l としたとき
jot -p 100 1000 0.03s user 0.03s system 0% cpu 12.421 total
h として screen の中で h としたとき
jot -p 100 1000 0.04s user 0.02s system 0% cpu 12.396 total
l として screen の中で Pl; l としたとき
jot -p 100 1000 0.02s user 0.04s system 0% cpu 12.474 total
l として screen の中で Pl; h としたとき
jot -p 100 1000 0.02s user 0.05s system 0% cpu 12.350 total
l として screen の中で Ph; l としたとき
jot -p 100 1000 0.04s user 0.02s system 0% cpu 17.846 total
l として screen の中で Ph; h としたとき
jot -p 100 1000 0.01s user 0.05s system 0% cpu 17.826 total
h として screen の中で Pl; l としたとき
jot -p 100 1000 0.03s user 0.03s system 0% cpu 12.424 total
h として screen の中で Pl; h としたとき
jot -p 100 1000 0.00s user 0.06s system 0% cpu 12.358 total
h として screen の中で Ph; l としたとき
jot -p 100 1000 0.02s user 0.04s system 0% cpu 17.843 total
h として screen の中で Ph; h としたとき
jot -p 100 1000 0.03s user 0.03s system 0% cpu 17.845 total
0168107
2005/06/10(金) 23:09:28screen ありで 12s、screen なしで 0.5s ってところです。
で、なにも(echo foo を)しないときは kterm は l のようで、
問題の原因は >>134 のそれではないようです。
というか、上の方で 1行ずつ描画してるのが問題とか書きましたが、
調べたところ全部 1行ずつというわけではなく、2行ずつだったりも
するようです。
情報 thx.
長文失礼。
0169名無しさん@お腹いっぱい。
2005/06/11(土) 11:08:260170名無しさん@お腹いっぱい。
2005/06/11(土) 17:59:01デタッチはoffにできません
screenが1つだけならkillでころすのですが、複数個起動していたら
どれがどのプロセスなのかわからなくなってしまいます
今は複数個、screenを起動している場合殺したいscreenで
全て一つずつ、Kで殺していっています
これだと、大分手間がかかるので
一気に殺せる方法があれば教えていただきたいです
0171名無しさん@お腹いっぱい。
2005/06/11(土) 18:03:53殺したいscreenにattachして
C-a :quit
0172名無しさん@お腹いっぱい。
2005/06/11(土) 18:07:50ありがとうございます
:q
:exit
などはやってみたのですが
なぜか、:quitはやってませんでした・・・
本当にすいませんでしたありがとうございました
0173名無しさん@お腹いっぱい。
2005/06/11(土) 18:10:38root 103 2.1 0.4 804 1388 ?? Ss Fri04PM 0:13.35 SCREEN (screen-4.0.2)
user 102 0.0 0.2 548 840 p0 S+ Fri04PM 0:00.34 screen (screen-4.0.2)
って、なんでrootが出てくんだ?
0174名無しさん@お腹いっぱい。
2005/06/11(土) 18:42:23set sidしているのと関係あるのかな?
自分以外のユーザがアタッチするときにroot権が必要
0175名無しさん@お腹いっぱい。
2005/06/12(日) 13:07:05俺はいつもconfigureに--disable-socket-dirをつけてる。
なんでデフォルトでsetuidなんだろうな。
0176174
2005/06/12(日) 13:12:070177名無しさん@お腹いっぱい。
2005/06/21(火) 23:32:32個人で使ってるしサーバとかにもしてないから、設定ファイルにrootのパス書くことは
全然問題ないんだけど何かいい方法あります?
suのマニュアル読んでみたけどオプションの引数にパスワード書いてrootになる方法はなさげだし
何かいい方法があったら教えてほしいです
よろしくおねがいします
0178名無しさん@お腹いっぱい。
2005/06/21(火) 23:49:35ssh root@localhostとか
0179名無しさん@お腹いっぱい。
2005/06/22(水) 01:02:080180名無しさん@お腹いっぱい。
2005/06/23(木) 22:08:340181名無しさん@お腹いっぱい。
2005/06/24(金) 00:23:20|個人で使ってるしサーバとかにもしてないから
じゃあrootパスワードを空にすれば?
0182名無しさん@お腹いっぱい。
2005/06/24(金) 03:28:50いまどきnullにできるUNIXなんてあるんだ
落ちたもんだな
0183名無しさん@お腹いっぱい。
2005/06/24(金) 04:16:250184名無しさん@お腹いっぱい。
2005/06/24(金) 11:20:11カーソル移動操作にhookしてscreenのbindキーなくして辞書検索するように
したいのですがどのようにすれば出来るでしょうか?
SSH_TTY=/dev/pts/1をcatだったかしてキー入力を検出出来たような
気がするのですが他にいい方法はあるでしょうか?
zshで出来るのかなとも思うのですがだれかわかる人
教えて下さい。
0185名無しさん@お腹いっぱい。
2005/06/24(金) 11:48:46いまいち何がしたいのかよくわからんから、詳しく書いて
0186184
2005/06/24(金) 13:20:45windows2000 + puttyが抜けていました。
現在rdicで検索する場合C-a C-w のように2回キーを押して
検索用スクリプトを起動するようにしています。
これを2回キー入力するのは面倒なので1回のキー入力で
検索用スクリプトを起動させるようにしたいのです。
ですので、キー入力一回事にスクリプトを起動させる方法が
しりたいのです。
よろしくお願いします。
0187名無しさん@お腹いっぱい。
2005/06/24(金) 13:29:320188名無しさん@お腹いっぱい。
2005/06/24(金) 13:41:18screenのbindkey使えば?
0189184
2005/06/24(金) 17:47:51bindkeyで一文字だけで割り当てられるとは知りませんでした。
ありがとうございます。
w3m デフォルトキーマップのwに辞書検索を割り当てて
.screenrc
bindkey w exec $HOME/bin/split.sh --search
w押下->辞書検索->次の単語に移動という動作にしたいのですが
うまくいきません。
bindkey に w を割り当てていて入力できないので
w3m keymapに
keymap x NEXT_WORD
としてxで次の単語移動の動作をつけて
split.shに
辞書検索スクリプト実行後
screen -X eval 'at work stuff x'
としたのですがw3mのカーソル位置にxが書き込まれて期待した
動作が得られませんでした。
そこで考えてscreenの他のウインドウ経由で実行するようにしたらたまに成功するようになりましたが
確実に成功させることはできませんでした。
screen -X eval 'at tmp stuff "screen -X eval \"at work msgwait 0\" \"at work stuff x\"^M"'
なぜかスクリプト経由のscreen -X eval 'at work stuff x'だとうまくいかず
他のウインドウから直接screen -X eval 'at work stuff x'した場合はすべてうまくいきました。
なにかよい解決方法はあるでしょうか?
0190184
2005/06/24(金) 18:10:57修正
screen上の他のウインドウからスクリプトを直に実行した場合も
100%成功する
screen上でbindkey経由で起動されるスクリプトで実行がうまくいかない。
0191名無しさん@お腹いっぱい。
2005/06/24(金) 18:17:10> なにかよい解決方法はあるでしょうか?
emacs使ってelisp書くか、自分でshellを書け
その方がスマートかつ短時間で解決できそう
0192名無しさん@お腹いっぱい。
2005/06/24(金) 18:22:41>bindkey w exec $HOME/bin/split.sh --search
bindkeyにwとか割当てると悲惨になるので、^[wとか割当てた方がよい。
>w押下->辞書検索->次の単語に移動という動作にしたいのですが
>うまくいきません。
どのようにうまくいかない?
>としたのですがw3mのカーソル位置にxが書き込まれて期待した
>動作が得られませんでした。
>
>そこで考えてscreenの他のウインドウ経由で実行するようにしたらたまに成功するようになりましたが
これは俺もはまった。execのfdpatが絡んできて結構複雑。
exec ! $HOME/bin/split.sh --search
にすればok
0193名無しさん@お腹いっぱい。
2005/06/25(土) 12:17:10emacsいいなーとはおもいますが
キーバインド覚えるのがたいへんで
vim使いつづけてますよ。
>>192
>bindkeyにwとか割当てると悲惨になるので、^[wとか割当てた方がよい。
2回キー入力はめんどうなのでにしました。
>どのようにうまくいかない?
>これは俺もはまった。execのfdpatが絡んできて結構複雑。
>exec ! $HOME/bin/split.sh --search
>にすればok
Hello World
H の部分で検索した場合
xello World
上記のようにw3mの画面にstuffで入力したキーが書き込まれる
時がありました。
exec !にしたらうまくいきました。
ありがとうございます。
ttp://www.dekaino.net/screen/screen-thread2.txt
[302] [303] [306] [307] [308] [309] [310]
に似たようなことが書いてあったので他の人のために貼
0194192
2005/06/25(土) 13:30:52>>bindkeyにwとか割当てると悲惨になるので、^[wとか割当てた方がよい。
>2回キー入力はめんどうなのでにしました。
^[wはalt-wだぞ
>ttp://www.dekaino.net/screen/screen-thread2.txt
>[302] [303] [306] [307] [308] [309] [310]
>に似たようなことが書いてあったので他の人のために貼
これ、俺です。
0195名無しさん@お腹いっぱい。
2005/06/25(土) 13:36:54便利なスクリプトができたら是非公開してくれ。
0197177
2005/06/28(火) 02:36:12パスワードがhogeとして例を書いてくれないですかね?
0198名無しさん@お腹いっぱい。
2005/06/28(火) 07:27:140199177
2005/06/28(火) 09:07:280201177
2005/06/28(火) 09:45:15考えて下さい
0202名無しさん@お腹いっぱい。
2005/06/28(火) 09:50:100203177
2005/06/28(火) 10:03:28.screenrcに書いたらいいことをそのまま教えて下さい
0204名無しさん@お腹いっぱい。
2005/06/28(火) 10:27:42スレ違い.ここまで読んで .screenrc で解決しようとする時点で君には無理.
0205名無しさん@お腹いっぱい。
2005/06/28(火) 10:44:500206177
2005/06/28(火) 10:52:19ですので、あなたたちが考えて下さい
0207名無しさん@お腹いっぱい。
2005/06/28(火) 12:15:570208177
2005/06/28(火) 13:48:46自分でわかれば聞きません
0209名無しさん@お腹いっぱい。
2005/06/29(水) 06:19:080210177
2005/06/29(水) 11:48:23では、だまります
■ このスレッドは過去ログ倉庫に格納されています