GNU screen その6(再生)
■ このスレッドは過去ログ倉庫に格納されています
0001ギレン総帥 ◆0QHV7fcZ.2
2009/07/11(土) 21:43:29GNU本家 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/
5 http://pc12.2ch.net/test/read.cgi/unix/1148721522/
6(即死) http://pc12.2ch.net/test/read.cgi/unix/1245767502/
0352名無しさん@お腹いっぱい。
2010/12/10(金) 10:49:06リブート自体基本的にやらないから、そういうので焦ったことは無いかも。
計画的に電源落とす時はシリアルケーブル繋いでやるし。
0353名無しさん@お腹いっぱい。
2010/12/10(金) 14:12:180354名無しさん@お腹いっぱい。
2010/12/11(土) 08:55:15シャットダウンした鯖の電源ケーブル抜いたつもりが
違う鯖だったので焦ったことはある
0355名無しさん@お腹いっぱい。
2010/12/11(土) 12:00:03絶対に許さない
0356名無しさん@お腹いっぱい。
2010/12/11(土) 13:42:51黒い筐体が流行で困る。
0357名無しさん@お腹いっぱい。
2010/12/11(土) 13:48:38ベタ過ぎる
構築時にタグつけないとね
0358名無しさん@お腹いっぱい。
2010/12/11(土) 13:50:140359名無しさん@お腹いっぱい。
2010/12/11(土) 14:10:250360名無しさん@お腹いっぱい。
2010/12/11(土) 18:28:100361名無しさん@お腹いっぱい。
2010/12/11(土) 18:30:51動いてるかどうかを見るのが良いらしい。
0362名無しさん@お腹いっぱい。
2010/12/11(土) 20:19:210363名無しさん@お腹いっぱい。
2010/12/11(土) 23:54:00付けて欲しいよな。そんで起動時にhostname>/dev/namelabelすると
そこに表示されるの。
0364名無しさん@お腹いっぱい。
2010/12/11(土) 23:59:040365名無しさん@お腹いっぱい。
2010/12/12(日) 12:09:21iLO2経由で制御できる
たしか前面にしかなかったけど
0366名無しさん@お腹いっぱい。
2010/12/12(日) 12:13:34サーバ単位で同定するためのとかHDD単位で同定するとか
0367名無しさん@お腹いっぱい。
2010/12/12(日) 16:59:33マシンの電源ケーブル間違えて引っこ抜く方がまだましな位
0368名無しさん@お腹いっぱい。
2010/12/14(火) 03:15:00鯉幟よりも鯖幟で売り出した方が売れるかな
0369名無しさん@お腹いっぱい。
2010/12/16(木) 01:44:41HDDにも液晶付けて欲しいわ
0370名無しさん@お腹いっぱい。
2010/12/17(金) 09:15:33termcapinfo xterm* ti@:te@
と設定したのですがスクロールが出来ません
何か他に設定があるんでしょうか?
0371名無しさん@お腹いっぱい。
2010/12/19(日) 15:08:13でかいのネットさんの非公式パッチを頂いてソースからビルドしてみたのですが
どうも表示の崩れが直らず、試行錯誤していたところ、どうも defbce "on" をすると崩れなくなる
ようでした。本家Gitの最新ソースでも、やはり同じ結果でした。
みなさんそういう感じでしょうか? それとも何か自分おかしなことしてそうでしょうか?
0372名無しさん@お腹いっぱい。
2011/01/27(木) 03:08:43こちらの方は、GUIやブラウザの重さに飽き飽きしてきました。
なるべくCUIで快適にすごしたいのですが、みなさんはどのように画面を構成しているのでしょうか?
おすすめな環境構築の方法を教えてください。
主にWindowsからUnix機へ繋いで繋いで使うことも多いのですがさんこうにならないかと
0373名無しさん@お腹いっぱい。
2011/02/06(日) 05:39:19<81><82> 2バイトが入力されるんですが、
これどういう仕様か判る人います?
ちなみに keybind は
escape ^]]
bind a paste .
です。 xterm 上。
あと colon から :paste . すると普通に paste できます。
... とここまで書いてふと気付いた。
% xxd
あ
0000000: e381 820a ....
そりゃそうか。いやでもこれなんとかならんかな。
xterm に screen と協調してもらうのは無理か。
bind あ paste . はできないようだ。
bind ^a paste . が落とし所か。てか既に .screenrc にあった。
bind a に慣れてるからなー。 a でいきたいけどダメかなこれ。
ダメですかね。まーいいか。いやあまりよくない。
0374名無しさん@お腹いっぱい。
2011/02/06(日) 08:31:46日本語モードで A をタイプインしたら普通「ち」だろう
0375名無しさん@お腹いっぱい。
2011/02/06(日) 12:07:45bind a eval 'paste .'
とか
0376名無しさん@お腹いっぱい。
2011/02/06(日) 22:59:33普通ローマ字入力だろう、と思っていたが。
カナキー入力とか azik より少数だと思ってましたよ。
>>375
それ paste . と同じじゃないです?
わざわざ書くからには違うのか。からくりが解らん。
0377名無しさん@お腹いっぱい。
2011/02/09(水) 07:20:37俺もカナタイパーだから分かるw
0378名無しさん@お腹いっぱい。
2011/02/25(金) 18:43:48.75別ウィンドウに ~/bin/hoge を実行しようと zsh から screen hoge すると
Cannot exec 'hoge': No such file or directory
とタイトルバーに表示されて実行できません
~/.zshrc ~/.zshenv ~/.zprofile の全部に
export PATH=$HOME/bin:$PATH
を書いても同じで実行できませんでした
zsh で hoge とすれば実行できるのでPATHは通ってると思うんですが
screen hoge で実行できない原因は何が考えられるでしょうか?
0379名無しさん@お腹いっぱい。
2011/02/26(土) 13:28:31.22zshの内部コマンドだったってオチとか?
0380名無しさん@お腹いっぱい。
2011/02/26(土) 14:23:37.65screen `which hoge` だとちゃんと実行できました
(which hoge がフルパスを返すので当たり前かもしれませんが)
zsh の内部コマンドではなく自作のpythonスクリプトで
パーミッション755にして実行可能になってます
0381名無しさん@お腹いっぱい。
2011/02/26(土) 18:58:57.640382名無しさん@お腹いっぱい。
2011/02/27(日) 13:06:17.96~/.zlogin はなかったので作ってやってみましたが同じでした。
自分で調べてみてわかったことがあるので補足します。
/etc/passwd のログインシェルはデフォルトの /bin/bash のままで
~/.screenrc には shell zsh と書いてます。
端末の起動には、mintty.exe -e screen -xRR のショートカットを作成し、
これを実行すると screen 上に zsh が立ち上がり、
~/.zshenv と ~/.zshrc を読み込んでることを確認しました。
(各ドットファイルの先頭に echo ファイル名 >> $HOME/log.txt でログ出力して)
この状態で screen hoge すると >>378 のようになります。
このとき、log.txt には何も追記されてませんでした。
(つまり、screen hoge 実行時には ~/.zshenv も ~/.zshrc も読まない?)
上とは別にテストのために minnty.exe を直接起動してみました。
すると当然 bash が立ち上がります(~/.bashrc を読み込む)。
bash から screen を起動すると zsh が立ち上がります(~/.zshenv と ~/.zshrc を読み込む)。
この状態で screen hoge すると正常に別ウィンドウで実行できました。
このとき、log.txt には何も追記されてませんでした。
下の方法では bash が無駄なプロセスに思うので、
上の方法でも screen hoge できるようにしたいのですが、
何かわかる方いれば助言をお願いします。
0383名無しさん@お腹いっぱい。
2011/02/27(日) 15:00:07.87何らかの理由でそれができないなら
方法2 .bashrcにPATHを設定するスクリプトを書く
0384名無しさん@お腹いっぱい。
2011/02/27(日) 15:51:58.12なんでbashが起動してるのかわからないけど。
0385名無しさん@お腹いっぱい。
2011/02/27(日) 16:19:57.860386名無しさん@お腹いっぱい。
2011/02/27(日) 20:18:38.88> bash から screen を起動すると zsh が立ち上がります
じゃあこの挙動が不正ってこと?
0387名無しさん@お腹いっぱい。
2011/02/27(日) 21:41:11.660388名無しさん@お腹いっぱい。
2011/02/28(月) 00:21:31.67>端末の起動には、mintty.exe -e screen -xRR のショートカットを作成し
cygwin は詳しくないんだけど、おそらくそれだと zsh の環境変数が screen 本体に継承されてないので、
screen -X setenv PATH "$HOME/bin:$PATH"
してみたら?
自分でも試してみようと久々に screen をインストールしていざ起動したら「$TERM too long - sorry.」
とか出るし。もういいや。
0389名無しさん@お腹いっぱい。
2011/02/28(月) 03:03:45.07ログインシェルを zsh にしてみましたが同じでした。
説明不足で申し訳ありませんが ~/.bashrc にもPATHは設定してます。
>>386
それは不正ではないんじゃないですか?
>>388
~/.screenrc に setenv PATH "$HOME/bin:$PATH"
を追加したら screen hoge を実行できるようになりました。
あるいは、ショートカットを mintty.exe -e bash -i -c screen -xRR
とすることでも screen hoge を実行できるようになりました(-i なしじゃダメ)。
この場合 bash のプロセスは残らないんですがどこ行ったんでしょ?
ともかく原因と対処法はわかりましたのでありがとうございました。
0390名無しさん@お腹いっぱい。
2011/02/28(月) 13:40:41.33SHELL=/bin/zsh
みたいな環境変数セットすればいい
0391名無しさん@お腹いっぱい。
2011/03/16(水) 05:39:25.98・ambiguous widthは2
・↑の設定のhogeterm + screen上でdialog等の罫線表示が崩れない
これを実現できる設定教えて欲しい。
実現できるなら端末エミュはなんでもいい。
・euc-jpにする
・ambiguous widthは1で我慢
・罫線表示するようなコマンド打つ前にset TERM=vt100
などの回避策はなしで。
誰も答えられないようなら
「いや〜screen内で全部済むからw」
とか言う奴を見かけたら次から心の底でバカにすることにする。
0392名無しさん@お腹いっぱい。
2011/03/16(水) 14:50:45.040393名無しさん@お腹いっぱい。
2011/03/16(水) 23:15:43.80その3つの条件だけなら、terminfoいじればいいよ。好きな端末を起動してこ
のコマンドを実行しておくだけ。
$ infocmp | sed 's/[a-z]*acs[a-z]*=[^,]*,//' > /tmp/tmp
$ tic /tmp/tmp
0394名無しさん@お腹いっぱい。
2011/03/17(木) 16:25:50.73そしてascii表示でお茶を濁す。この人とか
ttp://d.hatena.ne.jp/niha/20090130
0395名無しさん@お腹いっぱい。
2011/03/17(木) 17:52:18.30その人がしてるのはmltermにせっかく1カラムのDEC特殊文字で
表示してくれる機能あるのにscreenが間に入ると先に処理されて
mltermの機能が生かせないって話だ
0396名無しさん@お腹いっぱい。
2011/03/18(金) 18:42:46.25深入りすると腹が立ってくる
0397名無しさん@お腹いっぱい。
2011/03/27(日) 18:02:59.764.1だとステータスラインにでてくれるけど4.0.3だとウィンドウのタイトルバーにでてくるのでいつも見失う
0398名無しさん@お腹いっぱい。
2011/03/27(日) 18:21:11.600399名無しさん@お腹いっぱい。
2011/04/22(金) 21:55:58.07でもやっぱやめたくてマークをキャンセルするキーってありますか?
0400名無しさん@お腹いっぱい。
2011/04/23(土) 00:21:30.32なさそうだけどx(マークとカーソルの入れ替え)で対処できる。
0401名無しさん@お腹いっぱい。
2011/04/23(土) 00:47:16.28なるほど!
xは押してみたけど一見してダメだと思い込んでました。
ありがとう!
0402名無しさん@お腹いっぱい。
2011/05/01(日) 12:28:05.17detachして再接続をするとウインドウの分割した状態が復元されません
公式のFAQを見るとウインドウの復元は基本的にできない、もしやるならscreenをネストするとありました
普段ウインドウを分割している方はどのようにセッションを復元されていますか?
Screen version 4.00.03です
0403名無しさん@お腹いっぱい。
2011/05/07(土) 08:46:14.490404名無しさん@お腹いっぱい。
2011/05/07(土) 08:50:51.70http://hibari.2ch.net/test/read.cgi/unix/1268778432/
0405名無しさん@お腹いっぱい。
2011/05/07(土) 08:51:32.290406名無しさん@お腹いっぱい。
2011/05/07(土) 23:56:25.70外のDISPLAYに接続できるようにするスクリプトをかいてみたです。
screenの中のemacsからでもいけます。
hg clone https://koie@bitbucket.org/koie/screenx
0407名無しさん@お腹いっぱい。
2011/06/29(水) 21:52:06.45ctrl-tabで次のscreenに移動するのが実現できません。
どなたかosxでやっているかたいませんでしょうか?
いちおう.screenrcには他のOSでもやっているとおりで
bindkey "^[[1;5I" next
bindkey "^[[1;6I" prev
と書いているのですが
sshで外からwindowsのminttyでmacにつなぐと
うまくいくので.screenrcではなく
iTerm2の設定の問題だと思うのですが
0408名無しさん@お腹いっぱい。
2011/06/30(木) 01:33:59.210409名無しさん@お腹いっぱい。
2011/06/30(木) 10:49:42.100410名無しさん@お腹いっぱい。
2011/07/06(水) 00:39:12.82osx に vis あるかしらんけど。
0411名無しさん@お腹いっぱい。
2011/07/06(水) 10:38:47.50NAME
vis -- display non-printable characters in a visual format
SYNOPSIS
vis [-cbflnostw] [-F foldwidth] [file ...]
でもiTerm2の問題だと思うならMac板のUNIX系スレのが良いのでは
0412名無しさん@お腹いっぱい。
2011/07/08(金) 12:17:50.230413名無しさん@お腹いっぱい。
2011/07/22(金) 20:43:03.88GNU screen JIS X 0213 /UTF-8 拡張パッチ
というものを見つけました。
jless utf-8 パッチとkterm JIS X 0213/UTF-8 パッチもあり。
(個人的には、jless utf-8 パッチがありがたいです)
0414名無しさん@お腹いっぱい。
2011/08/01(月) 23:22:38.44を実行するとよく X selection の内容が変わらなかったりします。
sh -c "xsel -i < ~/.screen_exchange" ; sleep 0.1; xsel
だと変わります。screen -X exec sh -c と sh -c で何が違うのでしょうか?
試しに zsh で
i=$RANDOM; screen -X exec zsh -c "xsel -i <<<$i" ; echo -n $i: ; sleep 0.1; xsel
を連続実行するとやはり内容が変わらなかったりします。4回くらい実行すると変わったりします。
i=$RANDOM; zsh -c "xsel -i <<<$i"; echo -n $i: ; sleep 0.1; xsel
だとやはり変わります。
i=$RANDOM; screen -X exec zsh -c "xsel -i <<<$i;sleep 0.1" ; echo -n $i: ; sleep 0.1; xsel
でも変わります。
0415名無しさん@お腹いっぱい。
2011/08/13(土) 00:31:58.46xsel は background process になるので、すぐに exec が終わり
SIGHUP 発行となっているようす。
なので nohup を使って以下のようにすることで、問題は解消しました。
screen -X exec sh -c "nohup xsel -i < ~/.screen_exchange &>/dev/null"
# nohup 使いにくい。nohup.out 作ったり、その旨のメッセージを出したりしなくていいのに。
0416名無しさん@お腹いっぱい。
2011/08/22(月) 19:09:26.830417名無しさん@お腹いっぱい。
2011/08/24(水) 07:45:35.140418名無しさん@お腹いっぱい。
2011/08/24(水) 08:22:30.22自分自身でforkするプロセスはwaitできないよ(笑)
>>415
xsel -n で、forkしないようにできるけど。
あと、nohupの代わりに trap '' 1 で HUP無視する方法も。
0419名無しさん@お腹いっぱい。
2011/08/26(金) 14:14:12.670420名無しさん@お腹いっぱい。
2011/08/29(月) 00:38:00.96-n 付けて detach 抑制すると xsel が生きている間、
端末に制御が戻ってこないので問題があります。
trap は色々試した結果、このケースだとうまく trap されなかったんですが…
気になって今試したら trap '' HUP だとうまくいくことが判明。
前に試した時は trap 'echo foo' HUP とかやってたんですが、これだとうまく trap されない。
(nohup されないのはいいんですが、echo されず、trap されていることが確認できなかった。touch /tmp/trapped でも同じ)
というか trap '' HUP だとシグナル無視だけど、 '' じゃないと書いてあることを追加で実行するだけで、
元の挙動を抑制する訳じゃないのか。勘違いしていた。そういえばそうだった気もする。
シグナル無視と追加実行で trap される範囲が違うのか…?
まあもう nohup にしときますけどね。trap '' HUP の方が &>/dev/null 書かなくていいし多分速いけど。
0421名無しさん@お腹いっぱい。
2011/09/01(木) 03:38:20.62tcshの内部nohupを使えば解決するような希ガスんだが、どうしてもzsh使いたいの?
0422名無しさん@お腹いっぱい。
2011/09/02(金) 00:35:19.11nohup は /usr/bin/nohup です。
trap は sh というか bash です。済みません、まぎらわしいですね。linux です。
zsh は試しに使いましたが、screen に渡しているのは bash です。
# nohup 使う方法も zsh から呼ぶとなぜかうまく動かなかったし、
# 適当に試しただけですが、&! も setopt nohup もうまく動かず、disown はちょっと違うので、
# 結局 zsh は採用していません。
その builtin nohup は正に期待するもののようですが、
今は csh/tcsh を入れていないので残念ながら &>/dev/null しときます。
0423名無しさん@お腹いっぱい。
2011/09/25(日) 20:12:12.85ホームディレクトリじゃなくて、
作成元のディレクトリをカレントディレクトリにしたいのですが
どうすればいいですか?
0424名無しさん@お腹いっぱい。
2011/09/26(月) 14:27:38.87起動元のシェルのカレントディレクトリが引き継がれるよ
0425名無しさん@お腹いっぱい。
2011/09/26(月) 14:38:14.36ほんとだっ
こんなに簡単に実現できるとは
ありがとうございました
0426名無しさん@お腹いっぱい。
2011/10/25(火) 22:52:40.66どうすればできますか?
0427名無しさん@お腹いっぱい。
2011/11/20(日) 22:30:51.28/procファイルシステムを舐めてカレントディレクトリを調べる
スクリプトを書けば不可能ではなさそう
0428名無しさん@お腹いっぱい。
2011/12/08(木) 06:58:55.53普通のxtermと同じように画面を復帰するようにできませんか?
0429名無しさん@お腹いっぱい。
2011/12/08(木) 07:53:27.08$ man terminfo
0430名無しさん@お腹いっぱい。
2011/12/08(木) 07:57:53.82それはすでにやりましたが、直りません。
「man hoge」の回答者って確認せずに回答する人多いですよね。
0431名無しさん@お腹いっぱい。
2011/12/08(木) 08:08:47.470432名無しさん@お腹いっぱい。
2011/12/08(木) 08:10:46.58横レスだが、環境問わずscreenではそもそも >>428 の設定は不可能なのだが、
可能かのように知ったか回答してる >>429 が間抜けかと。
0433名無しさん@お腹いっぱい。
2011/12/08(木) 08:52:48.680434名無しさん@お腹いっぱい。
2011/12/08(木) 10:08:16.250435名無しさん@お腹いっぱい。
2011/12/08(木) 12:12:01.05altscreenをonにしろ
0436名無しさん@お腹いっぱい。
2011/12/08(木) 12:19:43.62できました!!ありがとう!!!
ちなみにterminfoの設定は元に戻しました(笑)
0437名無しさん@お腹いっぱい。
2011/12/08(木) 12:46:31.450438名無しさん@お腹いっぱい。
2011/12/08(木) 12:50:35.420439名無しさん@お腹いっぱい。
2011/12/08(木) 13:16:37.870440名無しさん@お腹いっぱい。
2011/12/08(木) 14:52:18.63■ このスレッドは過去ログ倉庫に格納されています