トップページ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/
0453名無しさん@お腹いっぱい。2007/06/15(金) 00:09:07
No other window
とか左下に出してる間は、標準入力に書けなくて下のプログラムがブロックしてるっぽいな
mplayerで再生中にこれやっちゃうと、再生がプチプチ止まる
どっちかっつうとmplayerのせいかな
0454名無しさん@お腹いっぱい。2007/06/15(金) 18:32:55
screen からコマンドを実行したときに、コマンドからのエラーメッセージが
出るときがあります。他のコマンドを実行したときに、古いメッセージが
ちらっと見えるのが気になってしょうがないのですが、この領域をクリア
する方法はありませんか。
0455名無しさん@お腹いっぱい。2007/06/20(水) 07:09:34
sshで繋げたとたんにscreen起動して欲しいのですが。
CentOS4 + putty + bash + opensshです。
0456名無しさん@お腹いっぱい。2007/06/20(水) 07:43:56
>>455
自分で起動するんじゃだめなん?
ssh -t REMOTE_HOST screen
駄目ならあれだ、ログインシェルを screen にすれ。
0457名無しさん@お腹いっぱい。2007/06/20(水) 12:21:12
その場合、screenにbashを起動するとか指定しないと
無限ループになる気がする
0458名無しさん@お腹いっぱい。2007/06/20(水) 13:18:16
そうさせないための工夫は色々あり得るけど
大したメリットがない割にリスクがある自動化処理は
やらないに越したことはない
0459名無しさん@お腹いっぱい。2007/06/20(水) 14:28:54
ssh_screen ()
{
eval server=$1;
screen -t "$server[ssh]" ssh "$@"
}
0460名無しさん@お腹いっぱい。2007/06/20(水) 23:16:07
>>455
.profile の最後にこんなの書いてみるとか

screen_opt='-x'
if [ $SHLVL -eq 1 -a x$SSH_TTY = x`tty` ] ; then
 screen $screen_opt
fi
0461名無しさん@お腹いっぱい。2007/06/20(水) 23:43:37
>>456-460 産休。
色々教えてくれてありがと。
めんどくさそうなのと、どうやら自動的にscreenを起動するのは
一般的でない気がして来たので、毎回screenと打つことにします。
0462名無しさん@お腹いっぱい。2007/06/21(木) 06:56:55
>>461
一般的でなくたって君の好みにあわせていいんだぞ
04634592007/06/21(木) 13:29:01
>>461
ごめん勘違い
これでいけるでしょ
[ ${STY} ] || screen -R
0464名無しさん@お腹いっぱい。2007/06/21(木) 23:25:46
前やってたけどぜんぜん難しくないよ。
0465名無しさん@お腹いっぱい。2007/06/21(木) 23:42:51
>>462-464 産休。
明日、環境変数STYを職場で調べてみます。

>>464
「前やってた」ってことは今はやってないってことですよね。
何かしらの不都合があったから、やめてしまったと推測。
0466名無しさん@お腹いっぱい。2007/06/21(木) 23:44:42
そういうのは邪推と言う。
0467名無しさん@お腹いっぱい。2007/06/23(土) 11:43:55
邪神の像を掲げれば道が開かれる
0468名無しさん@お腹いっぱい。2007/06/23(土) 13:21:54
普通に alias sx='screen -x' って書いてるだけだけどなぁ
0469ギレン総帥 ◆0QHV7fcZ.2 2007/07/21(土) 15:31:38
ジークジオン

Cygwinでscreen-4.0.3が正式サポートされたってアナウンスがあった
http://sourceware.org/ml/cygwin/2007-07/msg00466.html

試してみたけど デタッチとかリアタッチも正常に動作した
これはかなり快適

注意しないといけないのはwindowsの環境変数設定で
(マイコンピュータ→プロパティ→詳細設定→環境変数)
変数名CYGWINに tty という値をセットしておかないと
リアタッチできないという罠
最初に思いっきりはまってしまったよ
0470名無しさん@お腹いっぱい。2007/07/21(土) 15:59:16
ア・バオア・クーでもwindows使ってたんですか
だから負けるんですよ
0471名無しさん@お腹いっぱい。2007/07/23(月) 04:17:52
ジークXeon!

blogから来ますた。
て言うか嫁にSPARC Station捨てさせられたんダロ。
そもそもギレン総帥のくせに、Xeonですらなく
Geodeのしかもローエンド使わされてるってのが
情け無す。FPUすら無いじゃん。
screenより、3COMのNetBSD用ドライバさっさと
書いてよん。
0472名無しさん@お腹いっぱい。2007/07/23(月) 05:04:57
ウゼェ
0473名無しさん@お腹いっぱい。2007/07/23(月) 07:37:46
なにこれ?
スレチ上等の私信?
0474名無しさん@お腹いっぱい。2007/07/29(日) 23:12:590
>377

超遅レスだが社内でこういうterminal自作してた人がいたな...
昔のワープロの画面にこういうのがあったんだよね。

0475名無しさん@お腹いっぱい。2007/09/03(月) 14:28:08
最近screenを知って、こりゃ便利だと感動していたところですが。
現在通常のシェルで動いているプロセスをデーモン化(端末を閉じても
プロセスは生きている)することはできませんか?

screen上で動かしているプロセスならデタッチすればいいし
$ screen -d -m [コマンド]
で、デーモン化した状態でコマンドを実行できるんですけどね・・・

Ctrl+zで一時停止させたあと
$ screen -d -m fg
としてみましたがfgコマンドが見つからないと言われました
(おそらくシェルの内部コマンドだからかと)

PIDやttyを指定してそのscreen上で動いていない
プロセスをscreenが奪うとかできれば良いんですが。
0476名無しさん@お腹いっぱい。2007/09/03(月) 14:45:15
そのシェルが終了時にシグナルを送らないような設定があれば
それを使えばいいんじゃないの。

zsh なら NO_HUP オプションだし、他のシェルにも似たようなのが
あるだろう。
0477名無しさん@お腹いっぱい。2007/09/03(月) 16:52:00
端末(tty)自体は移せないんじゃないの?
0478名無しさん@お腹いっぱい。2007/09/03(月) 22:17:23
>>475
nohup じゃだめなの?
ttp://www.linux.or.jp/JM/html/gnumaniak/man1/nohup.1.html
0479名無しさん@お腹いっぱい。2007/09/03(月) 23:39:39
動かす前ならいいが、動かしちゃってからは俺には方法がわからんな。
0480名無しさん@お腹いっぱい。2007/09/04(火) 07:42:49
disownじゃだめなの?
あるいは、csh系なら端末を閉じてもそのまま動き続けたような。
0481名無しさん@お腹いっぱい。2007/09/04(火) 08:21:51
一般的なUNIXシステムのデーモン化ってのは
厳密に言うと端末を切り離す処理も含まれる。
単にバックグランドで動いているプロセスのことをデーモンとは呼ばない

バックグランドで動いているプロセスはデーモンではないが
nohup指定して呼び出したshellを先に終了させてしまったら
厳密な意味でデーモンとなってしまう。そしたらもうどうしようもない。

端末から切り離されたデーモンを別の端末に割り当てるなんて出来ない。
なにはともあれscreenを起動する習慣をつけとけということだ。
0482名無しさん@お腹いっぱい。2007/09/04(火) 08:32:55
あまり深く考えてなかったけど、端末から「切り離される」「割り当てられる」というのは
具体的にプロセスの何がどうなることなのかな?

なんとなくgdbやptraceで止めてしかるべきコールを呼び出すで
切り離せたり、つないだりする方法はないかなと。普通することでは
ないにせよ、純粋に技術上の関心として。
0483名無しさん@お腹いっぱい。2007/09/04(火) 10:02:08
>>482
gdbで無理矢理ttyをdupすればできなくもない。
でもemacsとかは無理だ。制御端末あたりの切り替えもがんばればできるのかな。

IyEvdXNyL2xvY2FsL2Jpbi9wZXJsCgpteSAkcGlkID0gc2hpZnQ7Cm15ICRwcGlkID0gZ2V0
cHBpZCgpOwoKY2hvcChteSAkdHR5ID0gYHR0eWApOwp1bmxlc3MgKCR0dHkgPX4gbXwvZGV2
L3wpIHsKCWRpZSAiJHR0eVxuIjsKfQoKbXkgJHByb2NkaXIgPSAiL3Byb2MvJHBpZCI7Cm15
ICRwcm9jZmQwID0gIiRwcm9jZGlyL2ZkLzAiOwpteSAkcHJvY2V4ZSA9ICIkcHJvY2Rpci9l
eGUiOwoKZGllICIkcHJvY2RpcjogJCFcbiIgdW5sZXNzICgtZCAkcHJvY2Rpcik7CmRpZSAi
JHByb2NmZDA6ICQhXG4iIHVubGVzcyAoLWUgJHByb2NmZDApOwpkaWUgIiRwcm9jZXhlOiAk
IVxuIiB1bmxlc3MgKC14ICRwcm9jZXhlKTsKCmNob3AobXkgJHN0dHkgPSBgc3R0eSAtZyAt
ZiAkcHJvY2ZkMGApOwpzeXN0ZW0oInN0dHkgJHN0dHkiKTsKCm15ICR0bXBmaWxlID0gIi90
bXAvdHR5bW92ZS4kPC4kJCI7CgpteSAkc2NyaXB0ID0gPDxfX0VORF9PRl9TQ1JJUFRfXzsK
c2V0IFwkdHR5aW49b3BlbigiJHR0eSIsIDAsIDApCnNldCBcJHR0eW91dD1vcGVuKCIkdHR5
IiwgMSwgMCkKcHJpbnQgZHVwMihcJHR0eWluLDApCnByaW50IGR1cDIoXCR0dHlvdXQsMSkK
cHJpbnQgZHVwMihcJHR0eW91dCwyKQpwcmludCBjbG9zZShcJHR0eWluKQpwcmludCBjbG9z
ZShcJHR0eW91dCkKcHJpbnQgc2lnbmFsKDEsIDEpCmRldGFjaApxdWl0Cl9fRU5EX09GX1ND
UklQVF9fCgpvcGVuKFRNUEZJTEUsIj4kdG1wZmlsZSIpOwpwcmludCBUTVBGSUxFICRzY3Jp
cHQ7CmNsb3NlKFRNUEZJTEUpOwoKc3lzdGVtKCJnZGIgLW4gLWJhdGNoIC14ICR0bXBmaWxl
ICRwcm9jZXhlICRwaWQiKTsKCnVubGluayAkdG1wZmlsZTsKCndoaWxlIChraWxsKDAsJHBp
ZCkpIHsKCXNsZWVwIDE7Cn0K
0484名無しさん@お腹いっぱい。2007/09/04(火) 10:02:33
以下の用語でぐぐれ
・セッション session
・プロセスグループ process-group
・制御端末 controlling-terminal

○あらゆるプロセスグループとプロセスはどれかのセッションに属す
○セッションは制御端末を持たないか、ひとつだけ制御端末をもつ
○セッションは別セッションと同じ制御端末を共有することは出来ない
○あるプロセスを同一セッション下にある別プロセスグループへ移すことは可能
○あるプロセスを異なるセッションにあるプロセスグループへ移行はできない

新セッションを作る →man setsid
セッションに制御端末を割り当てる →man TTY_IOCTL
セッションにプロセスを追加する →fork()すると親と同じセッションの下に入る
0485名無しさん@お腹いっぱい。2007/09/04(火) 10:18:47
>>483
emacsとかシェルなどの端末をバリバリ操作するアプリは
標準入出力をdupする程度では誤魔化し効かなそうだな
0486名無しさん@お腹いっぱい。2007/09/04(火) 12:46:28
ちなみにSolaris9以降のnohupは-pオプションでプロセスIDを指定できるので、
動かした後でもnohupをかけられます。
0487名無しさん@お腹いっぱい。2007/09/04(火) 13:55:17
APUE読めってこったな。APUEといえば第2版は翻訳されるのだろうか。
0488名無しさん@お腹いっぱい。2007/09/04(火) 15:09:17
和訳本は妙に高かったり、1冊の本が複数冊に分冊されたりするので
原文で読む方がいいぜ。どうせ和訳といってもカタカナになってるだけだしな。
0489名無しさん@お腹いっぱい。2007/09/04(火) 20:42:08
emacs multi-tty supportは……emacsclientがttyを握ってるから別に普通なのか。
0490名無しさん@お腹いっぱい。2007/09/04(火) 22:13:40
>>486
へぇ〜へぇ〜へぇ〜
0491名無しさん@お腹いっぱい。2007/09/04(火) 23:14:46
>>488
俺も原文で読むので、487の疑問は自分が読みたいとかいうのとは別よ。
英語に手を出す気にならないという人種もある程度いるわけだから、
そういうのにも読んでもらうには翻訳があった方がいいと思うんさ。
04924752007/09/06(木) 22:21:14
いろいろ情報を有り難うございます。

nohup -> 起動時に使わなければならないのでこの場合は不適切
disown -> 端末閉じたらプロセスがkillされました

Linuxでお手軽に条件を満たす方法はどうやらなさそうですかね。
この様な状況になりそうな時は素直にscreenで動かすとしますか。
0493名無しさん@お腹いっぱい。2007/09/07(金) 04:04:36
そうではなく常にscreenの上で作業せよ
0494名無しさん@お腹いっぱい。2007/09/21(金) 11:41:51
にしても、UTF-8だとパッチを当てても表示が崩れるなぁ。EUC環境に戻りたくなってくる…
0495名無しさん@お腹いっぱい。2007/09/23(日) 22:01:52
>>494
端末エミュレータは何を使ってますか?
0496名無しさん@お腹いっぱい。2007/09/24(月) 02:09:55
>>494
UTF-8はscreen関係なく崩れるから、未だにEUC環境使ってる
0497名無しさん@お腹いっぱい。2007/09/24(月) 02:15:03
UTF-8のcopy modeで日本語2文字選ぶと6文字copyedってでる
0498名無しさん@お腹いっぱい。2007/09/24(月) 04:32:20
>>495
PuTTYでもUTF-8 TeraTermでもMacのiTermでも崩れる。

>>496
ヲレの環境だとscreen使わなければ崩れない。けど、screenがない環境なんて
考えられないので…
0499名無しさん@お腹いっぱい。2007/09/24(月) 14:37:24
>>498
iTermはEUC-JPでも崩れていた気がする。

$ dialog --yesno 'キタ━━━(ノ゜∀゜)ノ ┫:。・:*:・゜★,。・:*:♪・゜☆━━━!!!!' 10 70
UTF-8環境でこういうのをやると、たいてい崩れるよ。
0500名無しさん@お腹いっぱい。2007/09/24(月) 16:38:57
やってみた
http://upup.moe.hm/imgbbs/upload/1190619083-30.png

崩れてるのかよくわからん
0501名無しさん@お腹いっぱい。2007/09/24(月) 19:39:31
>>500
ターミナルエミュレータとTERMの値おせーてください。
自分のとこだとカーネルの make menuconfig すら崩れまくりで
ホント悩んでます。Putty(UTF-CJK)+screen+TERM=screen環境では
ダメダメです。
0502名無しさん@お腹いっぱい。2007/09/24(月) 21:05:46
>>500
これdialogの枠がまともに出てないよな
0503名無しさん@お腹いっぱい。2007/09/25(火) 00:44:28
screen+zshで、screenのステータスラインのウィンドウタイトルに
カレントディレクトリを表示する方法がこのサイトに書いてあって
http://d.hatena.ne.jp/u-no/searchdiary?word=*%5BComputer%5D

.zshrcに
PROMPT=$'\033k/%c\033\134'$PROMPT
を加えたらちゃんとタイトル名がカレントディレクトリになったんだけど
TABで補完しようとするとコマンドラインの表示がバグる・・・

ちなみにbashでもダメだったんだけど何かいい方法はないかね。
0504名無しさん@お腹いっぱい。2007/09/25(火) 09:47:03
>>501
最近のdialogには罫線にASCII文字を使う--ascii-linesってのがある。
これがデフォでONにするhackをすれば崩れない。
0505名無しさん@お腹いっぱい。2007/09/25(火) 19:02:23
~/.screenrc内で、実行時の環境に応じて実行するコマンドを変えたいのですが、
man pageを見てもそれらしきコマンドがないので困ってます。
何か方法はないでしょうか?
0506名無しさん@お腹いっぱい。2007/09/25(火) 19:24:17
起動時に-cオプションでファイルを指定するか、
起動後にコマンドを放り込むかでどうでしょう。
0507名無しさん@お腹いっぱい。2007/09/26(水) 00:42:01
環境変数 SCREENRC にいろんな.screenrcの名前を設定すればいいんじゃね?
0508名無しさん@お腹いっぱい。2007/10/01(月) 12:25:45
screen 4.00.03でbash 3.1.17を使用しています。
コマンドラインの編集時、
文字数が端末の幅を超えると折り返して表示するように設定しているのですが、
screen使用時は正しく表示されなくなります(同じ行に重なって出力される)。
screenを使わない場合は正しく表示されるので、screenが原因だと思うのですが、
どうすれば正しく表示するようにできるのでしょうか?
0509名無しさん@お腹いっぱい。2007/10/09(火) 17:35:52
Cygwin + screen だとなんか~/.bashrc読み込んでくれねえ

.screenに
shell -$SHELL
の一行を付け加えたら読み込んでくれたのでメモ。
0510名無しさん@お腹いっぱい。2007/10/10(水) 15:26:19
GNU Screen上でVimのシンッタクスハイライトをオンにしたところ、
白の背景色に対して文字が黄色など、明るい色でハイライトされてしまいます。

set background=light
syntax enable

Screenなしの状態だとVimがちゃんと背景色を考慮したハイライトを
してくれるので、GNU Screenが提供する仮想端末の設定次第でどうにか対処できそう
なんですが、どの辺をいじればいいんでしょう?


05115102007/10/10(水) 15:28:25

補足。
WindowsからTeraTermを使ってLinuxにリモートアクセスしてます。
0512名無しさん@お腹いっぱい。2007/10/10(水) 15:46:32
>>510
その2行の順番が逆。
'background'は:syntaxの後に持ってこないと意味ないよ。
05135102007/10/10(水) 16:22:03
>>512
> その2行の順番が逆。

あれ? :syntax の前に指定しろってどっかで見たんですけど、、
順番入れ替えてもダメでした。

Screen使ってない状態だとあの2行で問題なかったんで、Screen側の
設定でどうにかなると踏んでるんですが、、、
0514名無しさん@お腹いっぱい。2007/10/10(水) 21:38:30
>>513
screenの内側とそうでない時で$TERMが違う、とか。
0515名無しさん@お腹いっぱい。2007/10/11(木) 00:17:06
おれは.vimrcに colorscheme darkblue と書いている。
0516名無しさん@お腹いっぱい。2007/10/11(木) 08:16:34
漢は黙って
systax off
05172007/10/11(木) 08:18:23
syntax off
だった
0518名無しさん@お腹いっぱい。2007/10/11(木) 17:20:15
システム利用税は無料にしてほしい
05195102007/10/13(土) 09:47:22
レスくれた人、ありがとうございます。

>>515
colorscheme いいですね。↓の中から好きなの選んで使うことにします。

Vimの標準カラースキーマ一覧
http://nanasi.jp/colorscheme/default_install.html

>>516
軟弱者ですいませんorz
0520名無しさん@お腹いっぱい。2007/10/16(火) 02:40:53
Linux初心者にオススメの無料OS、Ubuntu(ウブントゥ)。
ISOイメージをCDに焼くだけで起動ディスクの完成。
ディスクを入れたまま再起動すれば即(・∀・)ウブントゥ!!
既存の環境を汚さないLiveCDタイプで、安心して試せます。
気に入ったらHDDにインストールして常用も可能。

ダウンロード
http://www.ubuntulinux.jp/products/GetUbuntu

世界で圧倒的人気のLinux、それがUbuntu。
http://google.com/trends?q=Ubuntu%2CMandriva%2CSUSE%2CFedora%2CKnoppix

初心者超歓迎BBS
http://pc11.2ch.net/test/read.cgi/linux/1177677371/

★Ubuntu日本語サイト
http://www.ubuntulinux.jp/
★Ubuntu 7.04紹介記事
http://itpro.nikkeibp.co.jp/article/NEWS/20070420/269132/
http://itpro.nikkeibp.co.jp/article/NEWS/20070608/274191/
★Ubuntu 7.04インストールガイド
http://itpro.nikkeibp.co.jp/article/COLUMN/20070507/270108/

3Dデスクトップ環境「Beryl」
Minimizing Effects http://www.youtube.com/watch?v=fgV3KTKsRRk
Desktop Cube http://www.youtube.com/watch?v=xCO14ISplEg
Rain Effects http://www.youtube.com/watch?v=bLQgnXDgXyE
Window Switching http://www.youtube.com/watch?v=7JNEwa4-Q9s
Beryl + Wiiリモコン http://www.youtube.com/watch?v=xzlAR1rPKPg
0521名無しさん@お腹いっぱい。2007/10/16(火) 05:59:14
このUbuntuコピペって、素で布教のためにやってんの?
0522名無しさん@お腹いっぱい。2007/10/16(火) 06:36:12
何箇所かに貼られてるからね
0523名無しさん@お腹いっぱい。2007/10/16(火) 08:15:19
>>521
アンチの工作じゃないかな
0524名無しさん@お腹いっぱい。2007/10/31(水) 05:27:51
ssh -Xした先のホストでscreen起動して作業してるんですが
最初にscreenを起動した時は問題なくXのアプリケーションが起動できて
ローカルのX11サーバにフォワードされてるのに、一度dettachして
しばらくしてから(?)reattachしたらCan't open displayのエラーに
なってしまいます。DISPLAY環境変数はlocalhost:11.0となってて
起動直後と同じです。sshのXフォワーディングのしくみがよく
分かってないんですが、reattachした後でXのアプリケーションを使うには
どうするのが一番いいでしょうか?

ちなみにreattachした後、Control-a cで新しく開いたスクリーンでも同じエラーです。
screenコマンドを起動しなおせば再びXが正しく転送されるようになります(つまり起動直後)。
0525名無しさん@お腹いっぱい。2007/10/31(水) 07:16:35
>>524
つながらないとき、DISPLAY環境変数はscreenの外と中で違う値になっている
でしょ
0526名無しさん@お腹いっぱい。2007/11/01(木) 01:42:36
あーおっしゃる通り、
外はlocalhost:10.0で中はlocalhost:11.0と違う値になってました。
なるほど。。これを手動で設定して合わせないといけないわけですね。
0527名無しさん@お腹いっぱい。2007/11/01(木) 22:31:36
手動じゃなくてもスクリプトで何とかなる。
05285242007/11/03(土) 02:31:27
>>527
自動的に親のDISPLAYをとってきてセットすることってできますか?
ちょっと考えてみたけど思いつかなかった。
0529名無しさん@お腹いっぱい。2007/11/03(土) 02:43:19
あらかじめファイルに吐いておいて、必要に応じてそれを読むとか。
0530名無しさん@お腹いっぱい。2007/11/03(土) 05:58:21
複数の端末が存在してる場合を考えると
親の環境を読めない限り自動化は無理なのではないだろうか。
0531名無しさん@お腹いっぱい。2007/11/03(土) 08:40:55
screenでは複数の端末が同時に接続しうるので親の環境とやらの決定もできない。
0532名無しさん@お腹いっぱい。2007/11/03(土) 09:28:49
Xの通信を転送する機能をscreenに持たせればいいんじゃね
0533名無しさん@お腹いっぱい。2007/11/03(土) 12:21:57
X じゃなくて agent の forwading に使ってたんだけど、>529 のようなことをしている。
必要な環境変数をファイル(仮に ~/.sshenv とする)に吐いてから screen を起動するラッパ(仮に screenw)を用意して、
screenrc には以下のようなコマンドを書いておく。
bind s stuff "test -f ~/.sshenv && source ~/.sshenv\015"

で、 ssh example.com screenw でつないだ後、必要に応じて C-a s で環境変数を設定。

シェル起動時に実行されるスクリプトに書いておけばラッパは不要。
ただ、agent に関しては
http://blog.gcd.org/archives/50713097.html
の方がスマートそうだけどね。
0534名無しさん@お腹いっぱい。2007/11/08(木) 05:25:11
コピーモードに入るとカーソルが左上にすっ飛んで行くけど
これ仕様すか

カーソルを移動すると本来あるべき場所にすっ飛んで戻るけど
0535名無しさん@お腹いっぱい。2007/11/08(木) 14:03:58
手元ではそんなことないけどなあとしか言いようがない。
0536名無しさん@お腹いっぱい。2007/11/08(木) 14:56:42
もうちっとkwsk説明すると
1. コピーモードに入るとメッセージの末尾にカーソルが移動する
2. そのまま"Copy mode -..."のメッセージが消えるまで待つ
3. メッセージが消えた瞬間にカーソルが左上にすっ飛ぶ

1が起きない場合はカーソルは飛ばない
hardstatus onとhardstatus alwayslastlin...を指定してると起きないかも
msgwait 0にしていると1と2は省略される
0537名無しさん@お腹いっぱい。2007/11/08(木) 15:45:45
動作には問題無いし、仕様の範疇だろう。
気になるならすぐ直せるだろ。
0538vi信者2007/11/08(木) 15:48:54
一番下の行にカーソルをジャンプさせたきゃ L 一発打てばいいだけの話だし
どうでもいいんじゃないすか? HとかMとかも便利よ
0539名無しさん@お腹いっぱい。2007/11/10(土) 14:57:52
どこに書いたらよいか迷ったのですがscreenの問題のようなのでここで質問させてください。
putty+screen+vimという組み合わせで使っています。
vim側で、
  set mouse=a
  set ttymouse=xterm2
という設定を書いて、マウスでドラッグ選択、バー移動、ホイールスクロールなどができています。

また、以下のような設定を書いてターミナルのスクロールバッファを使えるようにしています。
  termcapinfo xterm|xterms|xs|rxvt ti@:te@

この状態で、
  hardstatus alwayslastline "%w"
というような設定で、最下行にステータスを表示するとターミナルのスクロールバッファが効かなくなるようです。
vimではホイールスクロールが効かなくなっていました。ドラッグ選択、バー移動はできているのでマウスそのものが使えていないわけではないようです。

以下のような設定で、タイトルバーにステータスを表示させるとスクロールバッファが効き、vimでホイールスクロールもできました。
  termcapinfo xterm*|rxvt*|kterm*|Eterm* hs:ts=\E]0;:fs=\007:ds=\E]0;\007
  hardstatus lastline "%w"

最下行に表示した方が色分けなどができて便利なのですが、スクロールバッファやホイールスクロールが無効にならない方法はないでしょうか?
長文ですみません。
0540名無しさん@お腹いっぱい。2007/11/10(土) 18:11:38
>>539
altscreen offすれ
0541名無しさん@お腹いっぱい。2007/11/10(土) 20:10:17
>>540
レスありがとうございます。
altscreen off 試してみましたが状況変わらずでした。
0542mfiler2作者2007/11/22(木) 14:28:42
screenで起動中のscreenに、タイトルで検索して、その端末を前に持ってくる
ことはできるんでしょうか?
タイトルがemacsという端末を自動的に前に持ってきたいんですけどね。
0543名無しさん@お腹いっぱい。2007/11/22(木) 15:05:34
screen の中の画面の話? or 複数 screen のはなし?

後者なら
screen -S emacs で起動しておけば screen -d -r emacs で呼び出せる
0544名無しさん@お腹いっぱい。2007/11/22(木) 17:46:04
>>542
at screen select .
でどうかな。
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 になっている。
■ このスレッドは過去ログ倉庫に格納されています