トップページunix
981コメント276KB

GNU screen その5

■ このスレッドは過去ログ倉庫に格納されています
0001ミスタースクリーン2006/05/27(土) 18:18:42
前スレがdetachされたので再attachしますた

GNU本家 http://www.gnu.org/software/screen/
公式ML(英語 たまにドイツ語) http://groups.yahoo.com/group/gnu-screen/
でかいのネット http://www.dekaino.net/screen/
UnixUser2004年1月号記事 http://risky-safety.org/%7Ezinnia/screen/contribute2/
Screen Glossary http://zinnia.dyndns.org/~hiki/Screen/
@IT:screenコマンドとは http://www.atmarkit.co.jp/flinux/rensai/linuxtips/692usescreen.html
私家版GNU Screen http://www.rubyist.net/~rubikitch/computer/hacks/screen/
screenコマンド一覧 http://www.limy.org/program/screen.html

1 http://pc.2ch.net/test/read.cgi/unix/1001966406/
2 http://pc5.2ch.net/test/read.cgi/unix/1048030339/
3 http://pc5.2ch.net/test/read.cgi/unix/1087436430/
4 http://pc8.2ch.net/test/read.cgi/unix/1111357444/
05455422007/11/22(木) 17:48:06
間違えた。screenじゃなくてemacsだ。
05465442007/11/22(木) 17:50:02
今度は名前を間違えたよ。545は544ね。
0547名無しさん@お腹いっぱい。2007/11/22(木) 17:50:51
おちけつ
0548mfiler2作者2007/11/22(木) 18:39:58
>>543
前者です。

>>544
screen -X select emacs
でいけますね。ありがとうございます。
タコな質問ですみません。

あと一つ質問があります。
screen上でemacsというタイトルがある画面があるかどうかは調べられますか?
無い場合はscreen -X select emacs; echo $?が1を返すとかなら
よかったんですが
どうやらそうでもないようですし。
これはさすがに無理ですかね。
0549名無しさん@お腹いっぱい。2007/11/22(木) 23:53:44
>>548
そういう事を知りたかったら、パッチを当ててウィンドウの情報を別途得るしかないかな。
procsave とか。
ttp://homepage3.nifty.com/clavelito/screen_w3m/
0550名無しさん@お腹いっぱい。2007/11/26(月) 01:03:00
最近使い始めた者です。
screenの中でviなどでファイルを開いた後、そのviを終了させると
元のシェルに戻ったときviで開いていたファイルの一部が
画面上に表示されたまま残ってしまいます。

これを通常のbashのように、シェル側には編集ファイルの内容を
表示しないよう.screenrcに設定することはできないでしょうか?
方法が分かれば教えてくださいorz
0551名無しさん@お腹いっぱい。2007/11/26(月) 02:08:05
Ctrl-l
おすすめ
0552名無しさん@お腹いっぱい。2007/11/26(月) 02:53:20
>>550
>>411-
0553名無しさん@お腹いっぱい。2007/11/26(月) 23:57:03
>>550
man読め

altscreen on|off
on にすると仮想端末で「別画面 (alternate screen)」のサポートが有効になる。これは xterm のと同様のものである。初期設定では off になっている。
05545502007/11/27(火) 00:49:05
>>552-553
遅レスすみません。
altscreen onで期待した動作になりました。
ありがとうございました。
0555名無しさん@お腹いっぱい。2008/01/01(火) 20:12:31
あけましておめでとうございます
今年もscreenよろしく
0556名無しさん@お腹いっぱい。2008/01/07(月) 07:11:16
screenが1年何事も動じずに動き続けるといいなあ。去年は3回ぐらい
ダメになったかな。
0557名無しさん@お腹いっぱい。2008/01/07(月) 19:03:51
ダメになるってどんな状態よ?
0558名無しさん@お腹いっぱい。2008/01/07(月) 20:52:07
>>556-557
自分の場合
・screenのあるバッファでいきなりキーボードがきかなくなる。
・そのバッファを殺すと別のバッファも固まる。
・問題の発生したscreenプロセスに-x等でattachできなくなり、
結局プロセスを丸ごと殺さないといけなくなる。

という現象によく遭遇した。
ぐぐり方が下手なのか同様の症状の報告例になかなか行き当たらない…
05595582008/01/07(月) 21:27:27
ちなみに当方の環境は
OS: Debian 4.0
screen: 4.0.2および4.0.3
です。
05605562008/01/07(月) 21:52:38
>>558-559
そうそう、そんな感じ。環境まで一緒(Debian)だなあ。
プロセス名SCREENは生きていて、CPUをほぼ食い尽くしているような感じ。
たぶん変なescape sequenceを受けてどっかで固まっていると思うんだけど。

0561名無しさん@お腹いっぱい。2008/01/07(月) 23:21:25
>>560
固まった時gdbでattachして回復させたことがあるよ
0562名無しさん@お腹いっぱい。2008/01/07(月) 23:58:50
>>560
えぇぇ、CPUをほぼ食い尽くしってのは怖いな
仕事で使うのは自重しといたほうがよいのだろうか
一応RH系しか使わんけど・・・
05635562008/01/08(火) 07:38:05
>>561
ども。今度固まったら、gdbかけてみよう。
>>562
365日立ち上げっ放しで死ぬことがある、という程度なので仕事なら
切りのいいところでscreen立ち上げなおしでいいんじゃないですかね。
自分も仕事で使っている分にはあんまり長い時間screen立ち上げっ放し
ということはないなあ。
0564名無しさん@お腹いっぱい。2008/01/08(火) 09:28:03
Devianは大変なんだな。
0565名無しさん@お腹いっぱい。2008/01/08(火) 13:01:00
そういう事、一度だけあった気がする
デスクトップ機(Mac OSX)で、立ち上げ数時間〜一日くらいの使い方だけど
0566名無しさん@お腹いっぱい。2008/01/08(火) 15:37:51
Debianの場合、わけのわからんパッチを当てていたりするからなぁ。
OS XはOS自体が多少変態的だし。

Solaris8 (いまだに…) で4.0.3 + このスレに出ていたパッチで運用しているけど、
数ヶ月に一度ホストOSをリブートするとき以外は常にそのterminalで生活していて、
幸い、不具合が起きたことはない。ってことで、頻度はかなり環境依存しそう。
05675582008/01/08(火) 16:23:36
うーん、こっちはdebじゃなくソースからコンパイルした場合でも起きたんだよなぁ。
ライブラリとの相性の問題だったらお手上げですが…ほんとにRHとかでの発生例はないのかな?

もっかい調べてみたらそれっぽい情報がようやくちらほら…該当するのかどうかは不明。
帰ったらまとめます。
0568名無しさん@お腹いっぱい。2008/01/08(火) 17:22:48
おー、俺以外にもいたのか。
去年1度だけ>>558とほぼ同じような状況がfedoraでおきたよ。
0569名無しさん@お腹いっぱい。2008/01/08(火) 17:31:48
大昔からあるバグだろ。
0570名無しさん@お腹いっぱい。2008/01/08(火) 22:54:47
>>569
kwsk
0571名無しさん@お腹いっぱい。2008/01/08(火) 23:53:04
大昔からあるなら誰か直すだろ。
0572名無しさん@お腹いっぱい。2008/01/09(水) 00:11:52
コピペした時とか、かなり大量に先打ちした時に糞詰まりで
ウンともスンとも言わなくなり、痺れを切らしてkill/C-akてのが
確かに月に数回くらいあるな。

screen1つならまだ許せるんだけど、SCREENだとダメージが大きくて
ちょっとorzとなる。再現条件がわからないし、デバッグビルドを
常時使うほど豆でもないので「また〜っ?」とか思いつつ使い続ける。
0573名無しさん@お腹いっぱい。2008/01/09(水) 00:27:48
Ctrl-a押すつもりがCtrl-s押して停止してしまうってのならあったな。
0574名無しさん@お腹いっぱい。2008/01/09(水) 10:22:26
detach/attach 時にリサイズかかると死にやすい気がする

っていうかそういう報告は他にも多々あった気がするけど
0575名無しさん@お腹いっぱい。2008/01/09(水) 10:24:15
>>574
Emacs使ってる?
0576名無しさん@お腹いっぱい。2008/01/09(水) 15:48:19
emacsでウィンドウを分割している状態でattachすると必ず死ぬ。
on FreeBSD 6.1 with Emacs 21.3.1
0577名無しさん@お腹いっぱい。2008/01/09(水) 15:59:50
>575
使ってます
あと screen 中の mutt(メーラ) から エディタで ng 起動しててという
状況がヒット率高い気がするけど死んだあとになってからでは
どういう状態だったか確認できないので本当のところはよくわからんです

>576
window 分割って C-x 2 みたいな状態?

日常的に navi2ch 開きっ放しなのでかなりの確率でその状態で
使ってるけど問題だと気づいたことはないです

いまは FreeBSD 6.2-STABLE #18: Wed Sep 5 10:22:02 JST 2007 で
screen-4.0.3 emacs-21.3_10 使ってるけど
0578名無しさん@お腹いっぱい。2008/01/09(水) 17:14:23
screenの下でw3mな端末をたくさん開いてるけど、
attachした時に(SIGWINCHが飛んで?)すげー時間かかることはあるけど、
死にはしないなぁ。

ただなんか別の拍子に>>558みたいになって死ぬことはある。
トリガは不明。
0579名無しさん@お腹いっぱい。2008/01/16(水) 15:20:47
screenの順番(M-n,M-pで移動する順番?)を途中で変更する事は出来ますか?
0580名無しさん@お腹いっぱい。2008/01/16(水) 15:23:09
>>579
numberでウィンドウ番号を替えればおk
0581名無しさん@お腹いっぱい。2008/01/16(水) 15:40:13
>>580
おお、出来ました!
即レスthx!
0582名無しさん@お腹いっぱい。2008/01/18(金) 18:50:05
screenコマンドをタイプして実行すると、カレントディレクトリでシェルが起動するのに
bind ^c screenだとホームディレクトリで起動します。
カレントディレクトリで起動させるにはどうすればいいですか?
0583名無しさん@お腹いっぱい。2008/01/18(金) 19:48:07
>>582
起動中のscreenが、それぞれのウィンドウの実行中プロセスのカレントディレクトリを
取得することができないので、無理。

M-: chdir であらかじめ起動したいディレクトリに移動しとくくらいしかできないな。
05845822008/01/18(金) 20:06:39
>>583
説明の仕方が不十分でした
「screenのセッション中でシェルからscreen、もしくはM-: screenとして実行すると、カレントディレクトリで起動する
しかし、bindしてショートカットでscreenコマンドを実行するとホームディレクトリでシェルが起動する」
という意味です。
05855822008/01/18(金) 20:23:08
>>583
今意味が分かりました
584は忘れてください。
0586名無しさん@お腹いっぱい。2008/01/18(金) 20:23:24
>>584
M-: screen では実行中シェルのカレントディレクトリからは起動しないだろ?
0587名無しさん@お腹いっぱい。2008/01/27(日) 23:38:43
ステータスラインに%Dで曜日を表示しようとすると文字化けしませんか?
何かよい解決方法はありませんかね・・・

あと、ステータスライン上に現在のLANG(エンコード)
を表示させる方法がお分かりの方がいたら、是非教えていただきたいです。
よろしくおねがいします。
0588名無しさん@お腹いっぱい。2008/01/27(日) 23:48:37
日付けや時刻表示はISO 8601スタイルにしてほしいんだがなあ
0589名無しさん@お腹いっぱい。2008/02/01(金) 18:43:13
Debian で screen 使ってます.
TERM=screen
LANG=C
で使ってますが,aptitude の画面が崩れます.
curses とは相性が悪いのでしょうか?
0590名無しさん@お腹いっぱい。2008/02/01(金) 19:02:17
うむむ,Putty で UTF-8 にしたら治った.
UTF-8 (CJK) とか UTF-8 (non-CJK) と何が違うんだろう.
GNU screen 側でのパッチも出てるようだけど,
http://www.pyon.net/diary/20070424.html
特に今は必要ないからそのうち入ると期待しておこう.
0591名無しさん@お腹いっぱい。2008/02/01(金) 22:55:15
つまり、Unicodeな罫線を半角とみるか全角とみるか、曖昧であるということか。
0592名無しさん@お腹いっぱい。2008/02/02(土) 00:21:32
半角ってなんですか
0593名無しさん@お腹いっぱい。2008/02/02(土) 00:22:57
えっちぃ板
0594名無しさん@お腹いっぱい。2008/02/02(土) 17:34:37
>592
wcwidthが1を返すのが妥当な文字
0595名無しさん@お腹いっぱい。2008/02/05(火) 16:55:46
昔「変換」とか「無変換」をエスケープに割り当てる方法を
紹介してるページがあったような気がするのですがいくら探してみても見つかりません。
どなたか教えていただけませんでしょうか。
bindkey で特定のコマンドを割り当てるのは上手くいくのですが。
0596名無しさん@お腹いっぱい。2008/02/05(火) 21:22:15
xmodmapで適当なキーに割り当てればいいんじゃないの?
0597名無しさん@お腹いっぱい。2008/03/03(月) 00:16:05
EUCだと化けた。
0598名無しさん@お腹いっぱい。2008/03/03(月) 00:25:27
PuTTYのごった煮版ってのをはじめて入れたけど
何も設定変えずに、screen下のbashのパスが
タイトルバーに出たりして感動した。
0599名無しさん@お腹いっぱい。2008/03/05(水) 13:11:32
urxvtでマウスを使ってスクロールバックすると、しばらくしてから勝手に最終行に戻ってしまいます
ESC+[でコピーモードに移行し、Ctrl+U等を使ってバッファを遡った場合にはこの現象は起きません
xtermでは起こらないのでurxvtの問題だと思うんですが、何か対策は無いでしょうか?

screen 4.0.3
urxvt 8.3
0600名無しさん@お腹いっぱい。2008/03/05(水) 13:49:44
>>599
それってscreen関係あるのか?
06015992008/03/05(水) 13:57:43
>>600
screen無しだと起きない現象なんで
0602名無しさん@お腹いっぱい。2008/03/05(水) 15:34:59
>>601
> xtermでは起こらないのでurxvtの問題だと思うんですが
urxvtの問題じゃないのか?www
0603名無しさん@お腹いっぱい。2008/03/05(水) 16:46:44
captionの内容が更新されて戻るんだと思う。
urxvt側の設定じゃないかな(ttyに出力があったときにscrollを中断するか)

0604名無しさん@お腹いっぱい。2008/03/05(水) 23:55:29
何もしてないのにcaptionの内容が変わるのか?
screen 4.0.3とurxvt 8.9だけど再現しなかった
0605名無しさん@お腹いっぱい。2008/03/06(木) 00:31:19
screen ってどういうところが便利なの?
gnome-terminal でタブ使用の俺に分かりやすく説明してクレ。
0606名無しさん@お腹いっぱい。2008/03/06(木) 00:41:16
>>605
一番メリットを感じるのは、リモートからsshとかで使っているときじゃないでしょうかね。
複数のコネクションを張らずにすんだり、コネクションが切れても大丈夫とか。
0607名無しさん@お腹いっぱい。2008/03/06(木) 00:56:45
便利に感じない人間までが無理して使う必要があるものとは思えん。
0608名無しさん@お腹いっぱい。2008/03/06(木) 01:52:57
>>605
タ ブ を 使 わ な く て い い と こ ろ
0609名無しさん@お腹いっぱい。2008/03/06(木) 10:55:56
突然端末が死んでもなんとかなるところ。
0610名無しさん@お腹いっぱい。2008/03/06(木) 12:38:55
^端末^俺?
0611名無しさん@お腹いっぱい。2008/03/06(木) 16:09:55
俺が死んだらどうにもならん。
それはさておき >604

> 何もしてないのにcaptionの内容が変わるのか?

時刻とか出すと変わるよ。あとcaptionじゃないけど、monitorとか
してるとactivityがあった時にttyに出力されるよね。

0612名無しさん@お腹いっぱい。2008/03/08(土) 18:52:46
複数スクリーンはあんまり恩恵感じない。
やっぱマシン側に端末があるってのがうれしいね。
0613名無しさん@お腹いっぱい。2008/03/09(日) 16:11:52
スクリーンの起動時に複数ウィンドウを開いてそれぞれをcd する方法を
教えてください。

1: /var/www/root
2: /var/www/app
3: /var/www/action
4: /var/www/view
5: /var/www/template
6: /var/www/log

なかんじで、 .screenrcに書いて出来たら最高でーーす。
おながいします。
0614名無しさん@お腹いっぱい。2008/03/09(日) 18:35:37
>>613
chdir /var/www/root
screen foo
chdir /var/www/app
screen bar
てな感じでどうかね。
06156132008/03/09(日) 18:47:59
>>614様 ありがとうございます。
できました。

screen -t root
chdir /var/www/root
screen -t app
chdir /var/www/app

な感じで出来ました。
.screenrcでコマンドが動くんですね。
設定を記述するのかと思っていました。

よくよく考えたら
bindkey とか ^A: bindkey -k F9 〜
とかやるのと同じ記述をscreenrcにも書きますね。
06166132008/03/09(日) 19:18:18
と思ったら、最初の chdirしか効いていないみたい。
06176132008/03/09(日) 20:01:34
とさらに思ったら、途中から相対パスで書いてたorz

すべて絶対パスで書いたらうまく行きますた。
0618名無しさん@お腹いっぱい。2008/03/21(金) 19:33:44
シェルがscreen上で実行されているかどうか知る方法はありますか?
0619名無しさん@お腹いっぱい。2008/03/21(金) 19:47:51
$TERM見るとか?
06206182008/03/21(金) 19:56:48
>>619
ありがとうございました
0621名無しさん@お腹いっぱい。2008/03/21(金) 21:37:57
$STY の有無で判断することが多いな
0622名無しさん@お腹いっぱい。2008/03/23(日) 01:42:20
screenの中からxtermのタイトルバーをいじる方法。
ESC P ... ESC \ で囲めばできるけど、俺の環境じゃ日本語が通らない。
printf "\033P\033]2;%s\007\033\134" "title"
0623名無しさん@お腹いっぱい。2008/03/23(日) 02:40:38
Linuxの話で恐縮ですが、putty+screen上でmake menuconfigが
崩れずに表示できてる人っていますか?
0624名無しさん@お腹いっぱい。2008/03/23(日) 05:57:06
TERMとかいじったらなんとかならない?
0625名無しさん@お腹いっぱい。2008/03/23(日) 11:27:52
>>623
UTF-8か?
0626名無しさん@お腹いっぱい。2008/03/23(日) 18:00:43
>>624
screen上なのでTERM=screenになっていました。
TERM=xterm make menuconfig
としてみましたが、表示は変わりませんでした。

>>625
UTF-8です。非screen環境ではUTF-8でも表示は崩れません。
LANG=C make menuconfig
をやってみましたが、変わりませんでした。
0627名無しさん@お腹いっぱい。2008/03/23(日) 20:07:31
>>626

screen -T $TERM

で起動してみる.
0628名無しさん@お腹いっぱい。2008/03/23(日) 20:15:01
>>627
ありがとうございます。
やってみましたが、状況は変わりませんでした。
06296272008/03/23(日) 20:28:55
>>628

ていうか PuTTY + Linux で素の screen (TERM は screen になってる) を起動して
make menuconfig してもくずれなかった.

PuTTY: 0.60-jp20070430
Linux: Debian lenny
screen: 4.00.03
06306272008/03/23(日) 20:32:39
う,もしかして linux 上で動く putty (or pterm) ?
0631名無しさん@お腹いっぱい。2008/03/23(日) 20:42:12
ありがとうございます。とりあえず、解決しました。
環境は
PuTTY 0.60-JP_Y-2007-08-06 on WindowsXP
Gentoo Linux(2.6.24のmake menuconfig)
Screen version 4.00.03 (FAU) 23-Oct-06
です。で、変換の文字コードが「UTF-8/Auto-Detect Japanese」
になっていたのを「UTF-8」に変えたら崩れなくなりました。
日本語もおkです。

色々教えてくださった方々、ありがとうございました。
0632名無しさん@お腹いっぱい。2008/03/30(日) 22:18:47
screen 実行中に変更した .screenrc 反映する方法わかんね
0633名無しさん@お腹いっぱい。2008/03/30(日) 22:45:50
^a :source ~/.screenrc だったような
0634名無しさん@お腹いっぱい。2008/03/30(日) 22:48:17
~ は使えなかったので $HOME で。
0635名無しさん@お腹いっぱい。2008/03/30(日) 23:04:44
screenでウィンドウ間のコピーペーストをすると、
途中で途切れるんですけど、コピーする際のサイズとかって
どうやって設定するんですか?
0636名無しさん@お腹いっぱい。2008/03/31(月) 00:01:07
>>633-634

トン
screen のコマンドで source ってのがあるわけか

>>635

さかのぼれる行数のことなら defscrollback
0637名無しさん@お腹いっぱい。2008/03/31(月) 00:22:11
> screen のコマンドで source ってのがあるわけか

え?
0638名無しさん@お腹いっぱい。2008/03/31(月) 11:19:34
>>637
え?
俺もそうだと思ってるんだけど違うの?
0639名無しさん@お腹いっぱい。2008/03/31(月) 11:29:37
>>637,638
へぇ,うちじゃ
$ type source
source is a shell builtin
って出るよ.うちが変わってるのかな.
0640名無しさん@お腹いっぱい。2008/03/31(月) 11:32:24
>>639
> $ type source
> source is a shell builtin
うちもそうでるけど、それが何の関係があるの?
0641名無しさん@お腹いっぱい。2008/03/31(月) 11:36:01
man 見ろよ。アホか。
0642名無しさん@お腹いっぱい。2008/03/31(月) 11:56:11
吹いたwww
0643名無しさん@お腹いっぱい。2008/03/31(月) 11:59:04
これね。
http://www.linux.or.jp/JM/html/GNU_screen/man1/screen.1.html#lbAH
0644名無しさん@お腹いっぱい。2008/04/03(木) 07:49:41
screen使っていると一部の文字が突然文字化けするんだが、
これを防ぐにはどうすればよいいのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています