TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼
BSDバブルを仕掛けるスレ 第2案
サン・マイクロシステムズはいかがですか?3
【tc厨が】bash3.0登場!!【嫉妬する】
2ch fortune
彼女にloginできません
make
初心者もOK! FreeBSD質問スレッド その123
【創作】UNIX文庫 文豪ハッカー【パクリ】
【Macintosh】MacでUNIX【Terminal】
山下監督と共にサーバを管理するスレ
GNU screen その6(再生)
- 1 :2009/07/11 〜 最終レス :2020/06/04
- 新スレが即死したので再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.sc/test/read.cgi/unix/1001966406/
2 http://pc5.2ch.sc/test/read.cgi/unix/1048030339/
3 http://pc5.2ch.sc/test/read.cgi/unix/1087436430/
4 http://pc8.2ch.sc/test/read.cgi/unix/1111357444/
5 http://pc12.2ch.sc/test/read.cgi/unix/1148721522/
6(即死) http://pc12.2ch.sc/test/read.cgi/unix/1245767502/
- 2 :
- スレ立てホスト規制がかかっていて、なかなか立てられなかった
今回は即死しないように、適度にレスをつけてくれ
とりあえず話題ふる
tmuxというのが最近あるようだが、どうよ?
http://sourceforge.net/projects/tmux/
BSDライセンスらしい
blog記事 http://d.hatena.ne.jp/tmatsuu/20090709/1247150771
- 3 :
- UNIX板の即死条件ってどこ調べればわかる?
- 4 :
- このままだとまたすぐ落ちるね
- 5 :
- とりあえず3Kバイト前後(20レス〜30レス)のあたりに設定されてるらしい。
- 6 :
- 結構使っている人多いよね。
- 7 :
- 再生乙
- 8 :
- じゃぁ、使ってる環境書いてこ
screen+byobu+emacs+zsh+(gnome-terminal|teraterm)
- 9 :
- BSDはtmuxに乗り換えたみたいだな
ちょっと使ってみたが、ほとんどscreenのクローンじゃねーか
- 10 :
- そりゃそうだ
- 11 :
- tmuxは異なるユーザで同じセッションを共有する機能あるのかな?
man page読んだ感じではどうも無さそうなのだが…
- 12 :
- >>9
> BSDはtmuxに乗り換えたみたいだな
kwsk
- 13 :
- >>12
今はOpenBSDだけっぽいが、ライセンス面でおそらく他にも波及するはず
このリンク先のTheoのコメントに理由が書いてある
http://undeadly.org/cgi?action=article&sid=20090707041154&mode=flat&count=9
- 14 :
- デフォルトprefix keyの違いは決定的だな。>tmux
一体どれだけの人間がscreenをC-aで諦めてきたことか・・・
#世の中の90%の人間はデフォルトで詰まると諦める
- 15 :
- いまちょっと tmux を試してるんだけど、俺の手指が短いせいか、 C-b はちと辛いな。
- 16 :
- >>13
英語読めない><
- 17 :
- C-aになれてしまった体
emacs使ってるがC-a aもしぜんになっちまった。左利きだからかね。
C-tも考えたけど小指+中指になるとつりそうだ。
- 18 :
- >>5
こんな過疎板で即死基準30レスは厳しい・・・
- 19 :
- C-\ だろ
- 20 :
- tmux、UTF-8の位置合わせがダメだ。
バイト数イコール桁数になってる感じ。
- 21 :
- 片手で押したい派と両手でもいい派はどっちが優勢なのだ?
- 22 :
- >>20
本当だ、これは話にならんな。今時Unicodeも考えてないなんて。
- 23 :
- >>1 乙
- 24 :
- tmux単独スレを立てても過疎りそうだから
次スレはscreen/tmux共通スレにする?
- 25 :
- >>24
っていう程tmuxは流行りそうなのか?
このスレが即死しなければ1000まで行くのにかなり時間がかかるだろうから自ずとわかるけど。
俺は C-z にしてるな。screen使ってるとC-zで裏に回す必要性無いしなあ。
- 26 :
- こんなのもあるな。
見た目のインパクトはあるけどどれほど使えるのやら。
http://sourceforge.net/projects/vwm
- 27 :
- >>26
VMMは コンソールで動く window managerに過ぎない。
screenとは別物だろう。attach / detach できなければ意味がない。
パッと見、前世紀のBolandのCUI IDEみたいだ。TC2.xの頃??
- 28 :
- escapeはC-zを標準にしろよ
- 29 :
- おれはC-lにしてる。
- 30 :
- どうでもいい。おれは C-y にしてる。、
C-y h で前窓、C-y l で次窓。失せろ。、
- 31 :
- screen のescape を変換キーに割り当てるにはどうすればいいんですか?
- 32 :
- 「俺は C-* にしてる」ネタって、どこかにまとめサイトみたいなのないのかな?
頻出でうんざりしない?
- 33 :
- 昔あった
今は知らん
- 34 :
- >>32
http://wiki.fdiary.net/screen/?ChoosingEscapeKey
- 35 :
- おお、あるんですね。
みんな、そこに書くようにしようよ。
- 36 :
- 自分で書け。
- 37 :
- いや、私はデフォルトのまま C-a なんで既に書かれてたみたいです。
というわけで各自あとはよろしくですー。
- 38 :
- というか即死回避のためにみんな無理矢理ネタ作って書き込んでただけだよ。
- 39 :
- あ、そうなんだ。先に言ってよ。
じゃあまあこれでこのスレも安泰かな?
- 40 :
- >>39
おまえのせいですげー不快な思いしたわ。失せろ。、
- 41 :
- まあおちつけよカス
- 42 :
- ctrl-^はかぶらない。
- 43 :
- >>40
ん?何か不快にするようなこと言ったっけ?
- 44 :
- 相手しない方がいいよ。
- 45 :
- うーん、なんかよくわからないけど引っ掻き回しちゃったようで。もうおとなしくします。
- 46 :
- つなげたらすぐにshellがscreenよびだす派?手打ち派?
- 47 :
- 機械製麺おいしいです
- 48 :
- 俺は手で入力する派
ログインスクリプトでscreen起動させるのは落とし穴がいろいろとあってやばい
- 49 :
- screen -listだけは実行してる。
けど、あまり意味ない気がしてる。
- 50 :
- 手打ち派になるのかな?
ウインドウマネージャにショートカットキーを割り当ててる
- 51 :
- putty接続から即screen呼び出しおいしいです^q^
でもマシン再起動とかで指定されたセション名のscreen死んでると立て直しに別設定でつなぐ必要が・・・。
- 52 :
- >>1 神奈川県民、乙。
screen使ってないけど、即死回避のネタ。
NetBSD/OpenBSDはGPL Freeにすべく必死にBSDライセンスで
車輪の再発明中。一番の大物、GCCを不要にしてpccに回帰してみたり、
LLVM/clangでmake world出来るようにしてみたり、挑戦中。
意外とmanのgroff(&ghostscript)を撲滅するのに苦労してるが。
それもこれもGPLv3がウザくて、組込みBSDで生計を建ててる人達が
GPL clean-roomを欲しがってるせい。
- 53 :
- 上でtmuxの話してるだろ。せめてログ読んでからレス書けよ。
- 54 :
- 組込でgsが必要な環境ってプリンタとかか?
- 55 :
- 組み込みでscreenが必要な環境ってあんの?
- 56 :
- >>54-55
そういう話じゃねーだろー
- 57 :
- screenの派生版の tscreenてのもあるらしいぜ
http://d.hatena.ne.jp/rubikitch/20090710/1247159893
http://www.steve.org.uk/Software/tscreen/
もちろんGPLに感染してます
- 58 :
- >>53
だから、>>52が書かれてるんだろ。流れ読めよ。
>>56
だから、そういう話。gsに限らず、組込みの中の小人さんと
screen(or tmux)経由で会話できると嬉しい開発者は
ゴマンと居るわけで。
でも組込みファームウェアがGPLに感染するのは嫌、と。
富士Xeroxのコピー機の中の小人さんとお話できたり
しないかなぁ。
- 59 :
- 小人さんて・・・
- 60 :
- 即死回避とかもう要らないから
- 61 :
- 悪魔くんのことを小人さんというよね?
休日出勤しろと指示する代わりに
小人さんにお願いすることってあるよね?
- 62 :
- そんなサムい言い方しない。
- 63 :
- 「小人さん」は言うけど、 daemon のことを「小人さん」とは死んでも言わないな。
- 64 :
- >>58
馬鹿か?ライセンスの話はスレ違いだ。いい加減にしろ
レス数が50越えてる時点で即死なんてしないわ
- 65 :
- 次からはLinux板に立てようよ
あっちのほうが人多いだろ
- 66 :
- 犬厨うぜー
- 67 :
- 馬厨だよ
- 68 :
- tmuxの話は、ライセンスの話
- 69 :
- 画面を普通に分割した状態で、デタッチ
↓
アタッチ
こうすると、画面分割が解除されてしまうのだけど、
解除されない方法はありませんか???
- 70 :
- GPLはただ乗りを防ぐよいライセンス
BSD厨はフリーライダー
- 71 :
- GPLは法治国家
BSDLは人治国家
- 72 :
- 日本は放置国家w
- 73 :
- だからライセンスの話はスレ違いだと何度言ったら分かるんだ
- 74 :
- >>69
最新開発版ならできるらしいよ。
ttp://ishikawa.arielworks.com/memo/2008/11/08/184006
- 75 :
- tmuxだと画面分割がemacsぽく垂直方向にも出来るな。
ソースコードも、screenはK&Rで書いてある上結構ゴチャゴチャしているのに
対して、確かにtmuxは綺麗に書いてあって可読性が高いんだが、まだ機能不足の
感が否めない。
- 76 :
- tmux はいつまで CVS で行くつもりだ?
- 77 :
- BSD系はCVSを使わないといけないルール
- 78 :
- tmuxって韓国発のWindows互換OSの事か?
- 79 :
- >>75
機能追加していくときっとぐちゃぐちゃになるよ
- 80 :
- ちなみにscreenでも開発版なら縦分割できるってのはもちろんみんなもう知ってるんだよな?
- 81 :
- 同じ事が出来るならライセンスが自由な tmux の方が良いな
- 82 :
- screenのライセンスは不自由だったのか
- 83 :
- 本当の自由は束縛しないからね
- 84 :
- 束縛されてるのか
- 85 :
- 亀甲縛りですよ。
- 86 :
- >>74
うは! しかも縦分割も出きるのかよw
リリース版が待ち遠しいな
- 87 :
- >>74
どうしてくれるんだ、左上の高輝度部分が網膜に焼きついた。
- 88 :
- 昔、縦分割したらスクロールが劇おそだったが、
ずいぶん改善されてるね。
- 89 :
- >>88
と思ったが、やっぱり遅い。
mltermがよくないのかな?
- 90 :
- >>89
urxvtでも遅い
- 91 :
- フォントが悪い
- 92 :
- >>91
screenとフォントにどういう関係が?
- 93 :
- >>89
まずはprofileを取ってみようか。
- 94 :
- てか、terminalの制御コマンド体系からして、分割スクロールに明日はないだろう。mlterm2つ並べてscreen -xしたほうがよい。
- 95 :
- git最新版でもパッチを当てないtハングするなぁ。
でも、社内の別の人はハングしたことがないといってるし
使い方にコツでもあるのか
- 96 :
- terminal typeが違うとか。infocmpして比較してみれば?
- 97 :
- パッチって何?
- 98 :
- みなし子
- 99 :
- それはハッチ。
寒いときに履くやつだよ
- 100 :
- それはパッチ(あってるやん)
あれ?これ?それ?
- 101 :
- え、こっちじゃないの?
- 102 :
- tmuxはutf-8な環境でもステータスに日本語表示出来るね。
- 103 :
- tmuxためしてみた。
左右分割でのスクロール速度がぜんぜん違ってさっくさくだな。
- 104 :
- キーバインドと起動オプションをscreen互換にしてくれたら
乗り換え考える
- 105 :
- tscreenは?
- 106 :
- UTF-8でuim-fep-tickまともに使えてる人いるかな。
或いはtmuxのステータスラインでuim-fepのモード表示
させてる人とか。
- 107 :
- tmux、aptitudeとかのcuressで画面制御するアプリケーションで表示が
崩れまくるんだけど、上手く出来ている人、設定教えて。
- 108 :
- 人に設定を晒させるにはまず自分からということわざがありましてうんぬんかんぬん・・・
- 109 :
- デフォからちょっといじって、.tmux.confは
set-option -g prefix C-z
unbind-key C-b
bind-key C-z send-prefix
set-option -g status off
set-option status-utf8
set-window-option utf8 on
ってな具合。
- 110 :
- 108がtmuxのこと何も知らないで、ただ単に>>108にケチをつけたがっていただけという可能性95%
- 111 :
- お前は何を言ってるんだ
- 112 :
- >>107
tmuxはUTF-8における文脈依存な文字幅問題への対応が不十分だから
ソース弄らなきゃムリだと思う。オレはscreenのcjkwidthパッチ参考
に直したよ。
- 113 :
- tmux は xselection と paste buffer (があるのか知らないが)の自動同期ってできますのん?
- 114 :
- _,,‐─-v‐、,,、
,,-‐'": : : : : : : : : : `ヽ
/: : : : : : : ,,__ : : : : : : \
r': ,、,,.-─''"゛ ミ : : : : : : : 'i、
`/ / ミ_ : : : : : : :,、}
i l _,,..-‐^‐-、 `゙i: : : /l.l|
i、}‐-、 ヽ;;/,rェッ;;'" ゙ー' 9iリ!
| ',tテi ヽ='" ゞ t'
| 'i"´| , -、 ヽ-、,,___
| '}、 !,,tu'" ヽ、 ,l: ‐-‐" }: : : : :
} lヽ、__,,,.-‐ヽ /: : : : : : /|: : : : :
,r/ /: : :ヽー‐' ノ: : : : : : : / .|: : : : :
/: \ /: : : : : 丶,, -''_: : : : : : / |: : : : :
/: : : : :ヽ/: : : : : : : ヾ''‐--‐ヽ |: : : : :
/: : : : : : : : : : : : : : : : : : ヽ\: : / |: : : : :
[Tmux-Thread De Yale]
(1955〜 フランス)
- 115 :
- ココじゃん
- 116 :
- bindkey -m って…
colon の入力も変換しちゃうの?してるみたいだけど。
コピーモードのテーブルを変更って man にはあるけど、colon もコピーモードなのでしょうか?
copy の入力だけ変換できないの?
…どうなんでしょうか
- 117 :
- あげときますね
- 118 :
- age
- 119 :
- tscreen も github のscreenも濁点が化ける。
結局cvs版に舞い戻り。
なんでだ。
- 120 :
- 分かりました。
単純にUTF8-MACのせいのようでした。
これ解決しなさそう・・・。
- 121 :
- 濁点ならUTF-8-MACというよりNFDのせいのような気がする。
- 122 :
- 日本としか使わないならEUC-JP
いろんな言語を表示したいならISO2022
MACのターミナルソフトが対応しているかは知らん。
- 123 :
- MacのTerminal.appの対応エンコーディング見たら、
日本語 (Mac OS) ←もはや負債
日本語 (Windows, DOS) ← Windows 31Jなんだろうか
日本語 (Shift JIS X0213)
日本語 (ISO 202-JP)
日本語 (ISO 202-JP-2)
日本語 (ISO 202-JP-1)
日本語 (EUC)
日本語 (Shift JIS)
とメニューにあった。実装的に正確であるかは知らん。
- 124 :
- ほ
- 125 :
- し
- 126 :
- い
- 127 :
- も
- 128 :
- の
- 129 :
- カ
- 130 :
- ネ
- 131 :
- シ
- 132 :
- し
- 133 :
- ょ
- 134 :
- う
- 135 :
- bashとscreenでウィンドウタイトルにコマンド名表示するようにしてますがsuでrootになるとタイトルがsuのまま更新されません。
shelltitle "$ |bash"になってて$を#にするとrootでタイトルが更新されますが
そうすると$で終わる一般ユーザで更新されなくなります。
$の時も#の時も更新されるようにできませんか?
- 136 :
- そもそもウィンドウタイトルなんて見ないんだが。
どんな時に見るの? 何の役に立つの?
とは言え、fvwm1.24で日本語だとウィンドウタイトル
化けるのは何とかして欲しいが、とっくに開発は2.xに
移ってるしなぁ。
- 137 :
- すげぇな。いまだにfvwm使ってんのか。どんな環境なんだよ。
仕事もせずに設定いじるのに時間使って輪。10年以上前か。
- 138 :
- >>136
未だにfvwm1か
- 139 :
- >>135
suなんか捨てて
sudoを使うべき
- 140 :
- 10年時が止まっているスレにでも移りましょう :-P
- 141 :
- 私を束ねないで
- 142 :
- そういえば、あらせいとうってみたことないわ
- 143 :
- sudoつながりに今気づいた。
- 144 :
- そのシグネチャのひとはshudoなんだな
- 145 :
- まんが初めて物語
ミンキーモモ
ポケットモンスター
の脚本家?
- 146 :
- と、同じ読みだね
- 147 :
- デスマご苦労さまでちゅ!
仕事がなくてヒマしているPGさんも
ご苦労さまでちゅ!
壊れて辞めてしまったPGさんも
これまた本当にご苦労さまでちゅた!
さて、フロは入ったほうがさっぱりいたしますが、
スレタイどおりと思いませんか?
- 148 :
- 誤爆、乙!
- 149 :
- 少し前にも話題が出てましたが、screenのウィンドウ名を実行中のコマンド名にする方法が分かりません。
http://aperiodic.net/screen/titles?DokuWiki=80186b2d88c0b5b254724a18b5647d4b
ここを見ながら設定しているのですが、
.screenrcに、
shelltitle "$ | bash"
と記述するところまでは分かるのですが、.bashrcの記述方法が理解できません。
例にあるように、export PS1='\[\033k\033\\\]\u@\h:\w\$ '
というのを.barshrcにペーストしても、タイトルはずっと"bash"のままでコマンド名にはなってくれません。
それどころかbashのプロンプトが文字化けっぽくなっておかしなことになってます。
アドバイス頂けないでしょうか。
- 150 :
- ついでにスレあげておきます。
- 151 :
- >>149
すくなくともPS1はプロンプトの形式を指定するための環境変数なので関係ないかと。
- 152 :
- リンク先見てみたけど
> screenのウィンドウ名を実行中のコマンド名にする
とは関係ないように読めるんだけどなぁ。俺の読み間違いかな。
- 153 :
- ごめん><
前半だけしか読んでなかった俺のばかorz
- 154 :
- tscreen 0.4.9使ってるんだけどvertical splitしたときの帯の色って変更できない?
captionやhardstatusで横方向の帯はなんとでもなるのに
縦は~/.Xdefaultsのurxvt.foregroundの色と強制的に同じにってのがなんか歯がゆい。
- 155 :
- tmux
- 156 :
- tmux、全角文字の途中で行の折り返しにかかるとおかしくなるね。
- 157 :
- utf-8 ですが問題なし
- 158 :
- そうなの?うちではtmux-1.1, CVS HEADともダメだったんだが。
下はgnome-terminalとxterm、どちらでも。zshで
repeat $((COLUMNS - 5)) echo -n ' '; echo あいうえお
とか。これでうの途中に行端がくるのだが、あいまで表示されて
次の行がすぐプロンプトになる。うえおはどこかへ消えてしまう。
- 159 :
- putty - tmux です
- 160 :
- PuTTY(UTF-8) - tmux-1.1 だけど、156 同様にダメだった。
ちょっとソースを眺めてみたけど、screen_write_cell の中の
/*
* If this is a wide character and there is no room on the screen, for
* the entire character, don't print it.
*/
ってとこにひっかかってるような。
試しにその処理をコメントアウトしたらちゃんと表示された。(副作用は知らない)
- 161 :
- そっか、問題ない環境もあるのか。tmuxが悪いわけじゃないのかな?
だけどscreenだとxtermなんかでもちゃんと表示されるしなあ。
- 162 :
- おっと、書き込む前にリロードすべきでした。結局puttyでも動いてないのかな。
- 163 :
- コードを見る限り UTF-8 だとダメそうなんだけど、157(=159?)の元だと正常に
動作しているんだよなあ。
まあ、BTS につっこんでみてもいいんじゃない?
ttp://sourceforge.net/tracker/?func=add&group_id=200378&atid=973262
- 164 :
- マルチユーザモードにみんなで入ってて、ウィンドウの操作の c/n/p とかをしたときに
他の人も連れてウィンドウ間を行き来するにはどうしたらいいですか?
- 165 :
- screen -x だと複数の clientで違う window表示できるけど tmuxだとできない?
- 166 :
- statusのタイトルは実行中のコマンドよりもカレントディレクトリの方が使いやすい気がする
- 167 :
- 俺はシェルのプロンプトのときはカレントディレクトリ、
コマンド実行中はそのコマンドにしてる。
- 168 :
- どうするの?
- 169 :
- >>167
やり方教えてけろ
- 170 :
- precmdとpromptに変更シーケンスを仕込む
- 171 :
- precmd じゃなくて preexec な
- 172 :
- screenのバックバッファをマウスのホイールで見たいのですが、できますか?
OS-X向けの解説に出てくる
termcapinfo xterm* ti@:te@
ではうまくいきませんでした。
ターミナルはgnome-terminalを使ってます。
- 173 :
- あけましておめでとう
- 174 :
- http://shyouhei.tumblr.com/post/313410522/screenrc
- 175 :
- >>174
ほとんど理解で金勝ったわ
- 176 :
- Emacs使う奴は信用しないことにしている。
- 177 :
- >>174
嗤うほどでもないが、アホちゃうかと
- 178 :
- うわぁ…
すごく頑張って書いたんだろうけど、痛々しさ以外ほとんど何も伝わらない文章だな
- 179 :
- デザイン的には面白いけど、すごくつかいにくそう
- 180 :
- あちこちにブログのURL貼りすぎ
こういう宣伝厨大嫌い
- 181 :
- ここにしか貼ってないよ。
- 182 :
- ただのゲスパーだろ
いちいち反応すんな
- 183 :
- 自演乙すぎる
- 184 :
- ちょっと環境変数の引き渡し方で質問です。
ssh(-agent)やX11が使う環境変数を引き回すのに
1. ログイン直後に関係環境変数をファイルにダンプ
2. screen アタッチ
3. 中のwindowでファイルをsourceしたりして取り込み
としてる人は多いと思うんですが、最近
1. PC-A からログインして screen で作業
2. PC-B からもログインして screen で並行作業
3. 作業途中で X11 なアプリを頻繁に上げたり下げたりする
と利用パターンが変わった結果、X11の$DISPLAYをPC-Aからキーを打っている
場合はPC-A側、PC-Bからキーを打っている場合はPC-B側とこまめに切り替えたく
なってます。
つまり従来のファイルダンプ方式だと「どっち側」を向いている設定か
判らないので、ssh-agentでは問題なくてもX11だとdetachしてはscreen -X
setenv DISPLAY=$DISPLAY とかコピペしたりと忙しくて面倒になっています。
そこで質問ですが、これを効率よくする方法はないでしょうか?
自分では見つけられず、やむなく改造してwindow内から親というかattachに
使った端末での環境変数を取れるようにしたのですが、これだけ枯れてる
ソフトをいまさら改造というのも変なので、screenの知らない使い方の
工夫でできるのではないかと。。。
- 185 :
- >>184
ローカルでも:0.0か:0.1とかあるし
ssh X11 forwardingもあるし
VNCの中から使うこともあるし
けっきょくシェルスクリプトでコマンドランチャを書いて
1. nmap で6000から6020までをポートスキャン
2. 複数候補があるときはプロンプト出してユーザが選択
3. stdinが端末じゃないときは選択できないので最初に見つかったDISPLAYきめうち
みたいなことをやっています。
- 186 :
- >>184
質問:screenだけでなくshellにも手を入れて現在の端末のDISPLAYを受け継ぐようにしたの?
- 187 :
- >>185
ポートスキャンw。その発想はなかった。
でもどっちを使うかはどう判断するの?(プロンプトにどう判断するための
情報出してるの?)
>>186
shellには手を入れてない。完全自動ではなく、あくまで1アクションで
取り込みできるようにしただけ。
最初はMSG_PUSHENVとか新設してscreen->SCREEN->sh-on-display/window ttyに
環境変数定義を突っ込ませるという方向でやってたのだけど、最終的に
- 入力中の側のscreenのpidをSCREEN側の環境変数で引けるように修正
- 設定で bind ^v eval 'stuff "injectenv $SCREEN_USERPID\012"' を追加
- 後は C-aC-v で "injectenv" シェル関数を呼んで環境変数を取り込み
というscreen修正+stuff+シェル関数コンボでやってみた。injectenv は
中でscreenの親pid(sh)を調べて、/proc/<pid>/environment から環境変数を
引っ張ってきて取り込んでる。
結局display/window tty側からはSCREENまでしか到達できず、
入力中userttyの判定ができない。userttyを掴んでいるscreen側から
アクションを起こす必要があって、エスケープコマンド経由になった。
で、その結果、stuffで突っ込むという微妙な方法(対話的にしか実行
できない)しか選べなかった。
理想的にはdisplay/window tty内のシェルからコマンド実行すると
大元のscreenまでシグナルが飛んで、そこから逆戻りでシェルに
環境変数突っ込んでくれるようなのがいいのだけど。
- 188 :
- >>184
>これだけ枯れてるソフトをいまさら改造というのも変なので、
GNU screenはいまも開発が続いているし、コミュニティにも
活気が戻ってきています。
http://lists.gnu.org/mailman/listinfo/screen-users
- 189 :
- >>187
emacsからXclientを立ち上げることも多いので、こんな形に落ち着いています。
ただnmapだけではscreen番号がわからないのは欠点ですが、
:0.1は完全にサブディスプレイなので問題になってません。
- 190 :
- emacsの中で何でもやろうとする奴って何かある毎に躓いて時間潰すよね
- 191 :
- マイナーなOS使ってるやつはみんな
何かある毎に躓いて時間潰すだろ
- 192 :
- >何かある毎に躓いて時間潰すだろ
それなんてWindows?
- 193 :
- ダウト!
何事も無くても、トラブって躓いて時間潰すのがWindows
- 194 :
- いつのまにかウィンドウフラグに$が含まれるようになってました。
^Awでウィンドウリストを表示すると
0*$ bash 1$ bash 2-$ bash 3$ bash
のようになります。
hardlinestatusにフラグ付きでウィンドウリストを表示してるので
$を消したいんですけどどこで設定するんでしょうか。
$なしで表示できてるPCから~/.screenrcや~/.bashrc、~/.bash_profile、/etc/profile、/etc/bashrc、/etc/screenrc
あたりをコピーしてきてもだめでした。
- 195 :
- フラグ$はそのwindowがloginしていることを意味しているらしい。
deflogin off にすればloginしないので$はつかなくなるな。
loginしたまま、$を表示させない方法は知らん。
- 196 :
- あるウィンドウがkillされたとき自動的にremoveを
実行させることってできますか?
- 197 :
- tmux 1.2
- 198 :
- >>197
ステータスバーの設定がめんどくさくてtmuxはあきらめた.
byobu(screen-profile)はありがたい.
- 199 :
- capture-paneコマンドのおかげで画面上の内容で補完できるようになった
- 200 :
- > * utf8 improvements.
これはどんな感じなのでしょうか
- 201 :
- tmux1.0のとき表示おかしくて使うのやめた記憶があるけど
1.2を試したら問題ないみたいなので常用することにした。
- 202 :
- tmuxのスレはここですか?
- 203 :
- tmux utf-8 最高っす
- 204 :
- >>156 のは直ったの?
- 205 :
- 直ってない
- 206 :
- 入れてみたが、tmuxは微妙にメモリ食いだな
- 207 :
- tmuxスレでやれ
- 208 :
- tmux なら、elinks で utf8 の日本語ページをスクロールしても
ゴミが表示されなくて良いな。
- 209 :
- tmux 良いのか
- 210 :
- tmux スレ立てちゃいなよ。マジで。
- 211 :
- わざわざ分ける意味がわからん
- 212 :
- >>204
うちでは特に問題ないみたいだが。
>>210
tmuxもここでいいじゃん。次スレたてるときに統合スレにしようず。
- 213 :
- これだけ連続してレス付いてんだから30〜40のレスくらい確保出来るだろ
tmuxスレ立てろよマジで
- 214 :
- 自分なんかにはあまり両者の違いが分からないんだけど
- 215 :
- BSDLとGPLの違い
- 216 :
- アイちゃんlove
http://pc12.2ch.sc/test/read.cgi/unix/1268778432/
- 217 :
- windowsで使いたいんだけどmsysで使える?
それともcygwinじゃないとダメかな?
- 218 :
- ここら辺のツール使ってるとwindowsのCUI環境はpower shellとか出たけど、まだまだだなぁと思うね
- 219 :
- 釣りなんだろうけど
それはshellの問題じゃなくて
コンソール側の問題だからね
- 220 :
- Teraterm 4.65にバージョンアップしたらscreenと相性が悪くて使えない・・・。
tail -fとかすると改行がひどいことに。誰か解決した人いませんか?
- 221 :
- putty
- 222 :
- >>220
別になんともなく使えてるけど、どうひどくなんの?
リモート側のTERMとかシェルは?Tera Term側のTerm typeは?
- 223 :
- ローカルでscreen常用してて、そこからsshで他のサーバに入ってscreen使うときって、
エスケープキーがかぶらないように設定するもん?それともssh用に違う端末立ち上げて使うべき?
- 224 :
- 2重screenは避ける、で無問題
- 225 :
- 多重起動したときに自動的にエスケープしてくれるとありがてーな
- 226 :
- >>225
名前は間違って入ってしまっただけなんで無視してくだされ
- 227 :
- ふだん、screenからsshして2重になってるな。
status line表示してるから、それが2段になってれば
エスケープを2度打ちするような条件反射になった。
さすがにscreen3重にして作業することはないな。
- 228 :
- >>223
基本的には違う端末使ってる。
切断回避のためだけに screen 起動する場合には、サーバ側で複数ウィンドウを
使う必要がないのでエスケープキーはそのまま。
- 229 :
- スレ主のギレン総帥に2世が産まれたそうだ。
screenの英才教育を施して、公国が永遠に続くように願う。
- 230 :
- >>219
power shellでscreenライクな機能使えるの?
winのserver coreとかただただ、機能が減っただけで使いにくそう。
- 231 :
- >>222
レスありがとう。遅くなってすみません。
いったんTeraTermのバージョンを戻したのですが、これを書くために改めてインストールすると
問題は解決していました。一過性かこちらのホスト側の問題だったようです。お騒がせしました。
ちなみに発生した事象ですが、tail -f 中に改行(ENTER)を押すと、通常であればカーソルが
TeraTerm画面の左端に移ると思いますが、当時は「40個位のスペースが入った後に ^M」が
表示される状況でした。(わかるかな。。。表現力に乏しくて申し訳ない)
なおご質問の環境ですが、シェルはzsh、TERM, Term type共にvt100です。
- 232 :
- teratermが変な制御コード食うとよく出る現象
Control -> Reset Terminal で直るよ
- 233 :
- 現在screen version 4.00.03を利用しています。
ログアウト時に実行したいコマンドがあり、これまでbashを利用していたときは
.bash_logoutに記述していたのですが、screenを利用するようになってからは
.bash_logoutが終了時に呼ばれないためどうすればいいか困っています。
alias logout='bash $HOME/.bash_logout;logout'
alias exit='bash $HOME/.bash_logout;exit'
なんていう気持ち悪い方法も試してみたのですが、当方、
ctrl+Dを使ってscreenを抜け出す癖があり、ctrl+Dを利用した場合は
exitコマンドやlogoutコマンドが直接叩かれているわけではないので
期待通りの動作はしませんでした。
どうすればctrl+Dを利用してscreenを終了した場合にも実行される環境を
構築できるでしょうか。
# ベストはscreen版の.bash_logoutのようなものが用意されていることなのですが…
解決法があれば教えていただけませんでしょうか。
よろしくお願い致します。
- 234 :
- >>233
> ctrl+Dを使ってscreenを抜け出す癖があり、ctrl+Dを利用した場合は
> exitコマンドやlogoutコマンドが直接叩かれているわけではないので
んじゃexitコマンドで抜けた場合は期待どおりの動作してるの?
- 235 :
- レスありがとうございます。
>んじゃexitコマンドで抜けた場合は期待どおりの動作してるの?
はい、しています。
bash利用時はctrl+Dで抜けてもexitで抜けてもlogoutで抜けても
.bash_logoutが実行されるみたいなんです。
また、screen利用時でも
alias exit='bash $HOME/.bash_logout;exit'
のようなものを.bashrcにでも書いておくことで、exitを叩いたときに
.bash_logoutが一応実行されます。
引き続きよろしくお願い致します。
- 236 :
- alias screen='screen;exit'
- 237 :
- screen bash -l
- 238 :
- レスありがとうございます。
>>236
なるほど。これは最初にbashからscreenを起動して、screenが終わった後にbash側でexitが実行されて
.bash_logoutが実行されるというロジックでしょうか。
現在私はbashログイン後にscreenを立ち上げると、psでプロセスを見たときにシェルのプロセス(?)が
複数立ち上がってしまうことが嫌なことなどから.bash_profileに
exec screen -RR
と記述することでscreen環境を構築しています。説明不足で申し訳ありません。
ですので、screenのaliasを作るのは避けたいと考えています。
しかし勉強になります。ありがとうございます。
>>237
勉強不足でコマンドを見ただけではよく分からなかったのですが、実際に実行してみて驚きました。
bashに-lオプションを付けることでログインシェルとして起動するのがミソなのでしょうか?
# すみません、よく分かっていません。
bashでログイン後、screen bash -lを行い、ctrl+Dで抜けると見事に期待した動作をしました。
そこで、今回の問題を解決すべく私の.bash_profileを以下のように書き換えました
if [ "`screen -ls | egrep '\(Detached\)'`" = "" ]
then
exec screen bash -l #(1)
else
exec screen -RR #(2)
fi
しかし、これだと(1)を通ったときにログインできず、現在はここで躓いています。
(2)を通ったときはこれまで私が行っていた設定と同じ挙動なので問題ありません。
お手数をおかけしますが、アドバイスの程よろしくお願い致します。
- 239 :
- ~/.screenrc には何が書いてある? (ココんとこ重要)
- 240 :
- レスありがとうございます。
.screenrcの中身は以下の通りです。
vbell off
defencoding UTF-8
escape ^z^z
term xterm-256color
scrollback 10000
termcapinfo xterm-256color hs@:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l
bind w windowlist -b
よろしくお願い致します。
- 241 :
- 直接問題解決にはならないが
.screenrcに scrollbackを書いても無視されるはず
(一瞬エラーメッセージが出てないか?)
defscrollbackにすべし
「ログインできず」とは具体的にどんな振る舞い?
- 242 :
- レスありがとうございます。
defscrollbackに修正させて頂きました。
>「ログインできず」とは具体的にどんな振る舞い?
sshでログインしようとしてパスフレーズの認証のフェーズまでは行くのですが、
認証が通った後、(恐らく)screen bash -lが呼ばれた瞬間に
[screen is terminating]
Connection to hoge.jp closed.
と表示されてコネクションが切断されてしまいます。
>>238で示した.bash_profileを用意しているので、Detatchされたコネクションが存在した場合は
screen -RRが呼ばれるため、再アタッチされて問題なく接続することができます。
うーん、screen bash -lが呼ばれたときは再帰的に.bash_profileが呼ばれてbash -lが大量に呼ばれてしまってるのでしょうか…(?)
引き続きお願い致します。
- 243 :
- exec screen bash -l の代わりに
exec screen bash --login --noprofile ってやってみたら?
- 244 :
- レスありがとうございます。
exec screen bash --login --noprofile
に変えてみたところ、ログアウト時の.bash_logout動作を確認できました。
しかし、--noprofileオプションであるが故に.bashrc等が読まれませんorz
.bashrcが悪いのかと思い、.bashrcをリネームした後に
exec screen bash -l
で試してみましたが、こちらも状況変わらずログインできませんでした。
何度も申し訳ありませんが、よろしくお願い致します。
- 245 :
- !??
連投すみません。.bash_profileへ
if [ "$STY" = "" ]
を加えてscreenの状態に入っているかどうかを判定することで、期待した動作をしました!!
以下のような形です。
if [ "`screen -ls | egrep '\(Detached\)'`" = "" ]
then
if [ "$STY" = "" ]
then
exec screen bash -l
fi
else
exec screen -RR
fi
やはり再帰的にbashが呼ばれていて落ちていたということなのでしょうか。
この度は数々のアドバイスありがとうございました。
- 246 :
- >>233です。
すみません、どうしても後1点だけお聞きしたいことがあります。
.bash_profile内でexec screenにてscreenを起動すると、
Last login: Tue Apr 27 18:58:15 2010 from hoge.jp
等のログインメッセージがターミナル上には(実質)表示されないことになってしまうと思います。
これを表示させる方法はあるでしょうか?
ログインメッセージをファイルに書き出しておいて、それを.bashrcでcatするぐらいしかないでしょうか。
立て続けに申し訳ありませんが、アドバイスを頂けると幸いです。
- 247 :
- last $USER | sed -n '2p'
で勘弁してくれ
- 248 :
- レスありがとうございます。
Last loginに関しては似たようなことを.bashrcに
echo `lastlog -u $LOGNAME | tail -n 1 | awk '{printf("Last login: %s %s %s %s %s from ",$4,$5,$6,$7,$9)}'``last -ad | egrep $LOGNAME | egrep -v '0\.0\.0\.0' | head -n 1 | awk '{print $NF}'`
と記述して誤魔化してるんですが、やはりログインメッセージ全てを出すことは難しいでしょうか…
# Last login以外にもログインメッセージとして表示されるものがあるんです;;
- 249 :
- > bashログイン後にscreenを立ち上げると、psでプロセスを見たときに
> シェルのプロセス(?)が複数立ち上がってしまうことが嫌
ま、この手のキテレツな美意識に共感できる人はこのスレには少ないだろうから
これ以上の助言は出てこないかも知れん
screen使ってたらshellのプロセスが多数存在するのが普通だからね
つーかshellプロセスががひとつだけの状態でscreen使っても喜び少ない
がんばって独りで修羅の道を貫いてくれ
- 250 :
- ツリー表示した時に一段深くなるのがいやってことかもよ
- 251 :
- psはいいけどログインが2重にカウントされるのがいやです
解決策はありますか><
- 252 :
- >>251
deflogin off
- 253 :
- 解決出来ました><
- 254 :
- hardcopy 使ったときに文字化けするのってFAQ?
patchどこかにある?
- 255 :
- rxvt-unicodeで利用してるんですが、HS行のみ文字化けしてしまいます。
terminfoでKJにjisを指定するとHS行の文字化けは無くなりますが、今度
は端末文字が化けてしまいます。HS行に%Dで曜日を漢字で表示したいので
すが、どのように設定すればいいでしょう?
- 256 :
- >>255 つ git clone git://git.savannah.gnu.org/screen.git
- 257 :
- MacOSX上のscreenとATOKの話なのでスレ違いかもしれませんが質問させてください。
hardstatus に時間の表示をさせると、時間が変わるタイミングで日本IMで入力中の
文字列がクリアされるのですが、これを避ける方法ってないですか?
- 258 :
- >>257
それってTerminal.appお使いの時ですよね?iTermだとクリアされませんよ。
Terminal.appだと16色表示しかできなくて不便なことが多いので、同じ問題に遭遇してiTermに乗り換えました。お試しあれ。
- 259 :
- ぬるぽ
- 260 :
- >>258
たしかに iTerm だとクリアされないですね。
でも、Visor から離れられないので、何とか Terminal.app での解決を探したいんですよね……。
ガッ _, ,_ _, ,_ガッ♪
ガッ _, ,_ ( ・д・)(・д・ ) _, ,_ガッ♪
( ・д・)☆ミ⊂ ⊃彡☆(・д・ )
⊂彡☆))゚△´*)>>259☆ミ⊃ガッ♪
, ,∩彡☆ ☆ミ∩, ,
( ) ガッ ( )
ガッ ガッ♪
- 261 :
- tmuxなんてあったのか、いいなぁ
screenはredhatとかお堅いのにも入ってるのが有り難いんだけど
tmuxはまだ時間がかかるか・・・
- 262 :
- screen単独起動時に端末アプリの上にあるアプリタイトルバーが「screen」という文字に
上書きされてしまうんだけど何でだろう。hardstatus alwayslastlineにしてるから
アプリのタイトルバーには出力されないはずだと思ったけど、理解が間違ってる?
端末はputtyなんだけどこれのせいかな
- 263 :
- puttyは悪くない
- 264 :
- tmuxってlibeventのバージョン最新じゃないと使えない?
- 265 :
- libevent1.4ってかいてあるから、そうなんじゃないの。
あと、tmuxのスレあるよ。
- 266 :
- >>265
CentOS5でyumで1.4.13-1に上げたんだけど駄目で、
自分で1.4.14bを落としてきて入れたらコンパイルできたんで
アルェーっと思った次第
つかtmuxスレあったんだ、スマン
- 267 :
- エラーメッセージも晒さずに何を言っておるのかね
- 268 :
- 犬だからしょうがない。
- 269 :
- 見えないから何かと思ったら「CentOS」の文字列が含まれてるのか。
うざいからNGワードにしてるよ。
- 270 :
- だせえw
- 271 :
- >>269
そういうの報告しなくていいよ。
- 272 :
- hardstatusでタイトルにカレントディレクトリ含めてる人多いと思うけど
ウィンドウ数が多すぎたり、同じ名前だったりすると混乱しない?
hardstatusを最下行の1ラインではなく、リージョン1つに丸々割り当ててしまって
縦にリスト表示できたりしたら便利なんだが
- 273 :
- >>272
ウインドウ数が多い場合はウィンドウ番号で分けるのも一つの手。
デフォルトのコンパイルオプションだと40まで割りふれるはず。
常に表示される訳じゃないけど、:windowlist の一覧では物足りない?
- 274 :
- screenを10個ぐらい起動したらかなり重くなった
topで見てもメモリもCPUも全然余裕なのに
なんでじゃろ
- 275 :
- scrollback 多すぎるとか?
- 276 :
- 10000だけど、別に普通だよね
てか、今もう一度試したら大丈夫だった
時間経過で変わるんだろうか・・・うーむ分からん
- 277 :
- C-Iのウィンドウ移動って横分割・縦分割の区別なく作った順に移動するけど、
区別して移動することってできませんか?
例えばC-Iは横分割のみの移動、C-Uは縦分割のみ、って設定できるといいんですが。
- 278 :
- なにそのtmux使えば?って言いたくなる書き込み
- 279 :
- >>278
tmuxならできるんですか。前に使ってみたけどイマイチ慣れなくてやめちゃったんだよなぁ。。。
もう一度やってみようかしら
- 280 :
- おう
- 281 :
- >>277
tmuxだとselect-paneコマンドの-D/L/R/Uで移動方向を指定できる。
- 282 :
- screenをコマンドと一緒に起動して、そのコマンドが終了されてもscreenが残るようなオプションって何かあります?
shell>screen tail -f /var/log/messages
ってやって、C-c送ったらscreenごと落ちちゃう。
manには
>When a program terminates, screen (per default) kills the window that contained it.
ってあるからdefaultじゃないオプションがありそうなんだけど見つからず・・・。
- 283 :
- >>282
zombieとかdefzombieあたりを設定するとなんとかなるかもしれない
- 284 :
- .>>283
thx! やってみたら思い通りにならなかったけどもうちょっと調べてみる!!
- 285 :
- bind ^h xxx と設定したのに何故か^hが効かない
クマッタ(´・(ェ)・`)
- 286 :
- ナデナデヾ(´・(ェ)・`)
- 287 :
- sttyでも見ろ
- 288 :
- git版でそうなる。4.00.03とか古いのだと問題なし・・・
>>287
stty eraseかな?<undef>にしても変わらんかった
もうめんどくなってキーバインドごと変えてしまった
- 289 :
- Windows から Mac に変えたんだけど、キーボードの右Ctrlキーが無くて困ってる。
escape に Mac の Command キーを割り当てる方法ってあるのかな?
- 290 :
- KeyRemap4MacBook (という名前だけどiMacでも使えてた) に
Remap Escape Key > Escape to Command_L
という項目があるのは見つけた。
- 291 :
- Page Up キーを押したら、copy モードで1ページスクロールアップして欲しいのですが、
これを実現するには設定ファイルにどう記述すれば良いですか?
- 292 :
- >>291
page upをターミナルエミュレータがフックしてたら無理だな
- 293 :
- ウィンドウをいくつか開いてる状態で、あるウィンドウを任意の場所(例えば左端とか)に移動させる事って出来ないのかな?
- 294 :
- きっとお求めの機能と違うと思うけど、number じゃだめ?
- 295 :
- コピーモードではキーの移動とかがvi的になりますが、この操作についてのキーバインド設定はできますか?
(できれば自分の.vimrcを読ませられれば便利なんですが、さすがに無理ですか?)
- 296 :
- OS X 10.6 でscreen(Ver 4.00.03)使ってるんですが、
hardsstatusに[%m/%d %02c:%s]を入れて日時を表示させるようにしたら、
日本語を入力できなくなったんですが回避策ってありますか?
秒の数字が変わるたびに、未確定の日本語が全部クリアされてしまいます。
- 297 :
- >>296 >>257
- 298 :
- captionはフォーカスがあるやつだけ表示、hardstatusは全部表示って人多いと思うけど
長く設定したらhardstatusが詰まるし、短くしたらcaptionがスカスカになるんだよなぁ。
タイトルが両者共有なのが原因なわけだけど、なんか上手い方法ないものか・・・。
- 299 :
- 別所に誤爆してしまった
リモートAから他のリモートBにssh接続するときにリモートAに接続するときの鍵でリモートBに接続したいと思っています。
これはagent forwardingの話だと思うのですが、
puttyでリモートAで接続したときに接続時にscreenを立ち上げるようにするとagent forwardingができません。
screenを立ち上げずに接続した場合は、リモートBに接続できることを確認しました。
ssh-add -lするとやはりscreenなしで接続した場合はちゃんと鍵の情報が追加されており、
screenの場合は追加されていません。
上手いことヤル方法はないでしょうか?
- 300 :
- リモートBにリモートAに接続するときの鍵を追加する
- 301 :
- macportsのtmuxにある,+screenってどういう効果?
- 302 :
- >>299
echo $SSH_AUTH_SOCKしてからscreenにはいってsetenvする。
- 303 :
- screen使ってるとマシンの電源が落ちても大丈夫、みたいな錯覚に陥りがちだなw
間違えてシャットダウンしちゃって、一瞬「危ねーセフセフ」って思ったあと「いや駄目じゃんorz」って気づいたり
俺だけかw
- 304 :
- ローカルでscreen使わんし
- 305 :
- ありがと
試してみる
環境変数がわたらない問題なのか
- 306 :
- バックスペースをバインドするときって bind ^? で合ってますか?
何故か効かないのですが。
- 307 :
- パックスペースは ^H だろうな
- 308 :
- >>307
ありがとうございます。^HにするとCtrl-Hで効いてくれました。
ただ、Backspaceキー自体は何のキーコードで効いてくれるんでしょうか?
screen以外では普通に効きますし、xevで調べてるとちゃんとkeycode 22
として認識されていました。キーカスタマイズなどはしていません。
ググってみたところ、どうもscreenのCtrl-hには色々と面倒なことがあるようで
Debianだと bindkey -k kb stuff "\177" を付ける付けないといったtipsがあるようです。
- 309 :
- >>308
バックスペース押しても消えないっていう状態でよい?
stty erase バックスペース押す エンター押す
- 310 :
- escapeのため^Q とか ^V いらないんだっけ?
- 311 :
- >>309
はい。
stty eraseを ^? と ^h 、screenのbindを ^? と ^h、キーボード入力を Ctrl-h と Ctrl-BS
と全ての組み合わせを試してみましたが、全てにおいてCtrl-BSが効きませんでした。
環境ですが、WindowsXP 32bit からPuTTY 0.60 ごった煮版で CentOS 5.3 64bit にsshしています。
screenのせいではないかもしれないので、他の環境でも試してみます。
ありがとうございました。
- 312 :
- 全てにおいてCtrl-BSが効きませんでした
う?
- 313 :
- PC-98のキーボードだと^hだけど、SUN type4キーボードだと^?
発生するんだよなぁ。
- 314 :
- ctrl-BS を端末エミュレータがどんな文字列に変換するかによるね
一般的解 そんな変態コンビネーションは使わないに限る
- 315 :
- 勘違いしてるだけだろ…
- 316 :
- 先のCentOSをローカルから使うと、今度はCtrl-hが効きませんでした。
ああもう訳が分からない・・・。
- 317 :
- >>311
PuTTYだったらバックスペースのコードを選択するオプションがあるでしょ
- 318 :
- Ctrl+BSなんて通ると期待しちゃいけない。
- 319 :
- DELとかBSとかの仕様は正直よくわからん
読む気がせんわ
- 320 :
- リソースモニターが一望できない欠点があるけどネタになるかな?
backtick 0 0 0 conky -c hoge
conky側は設定ファイルに
out_to_console yes
out_to_x no
…
TEXT
${scroll 30 5 CPU:$cpu Mem:$men 〜一行内容を記述}
こうすると、電光掲示板のように内容が流れる。
30が文字幅数、5が送り文字数って意味、後はhardstatusの空き幅に併せて設定するだけ。
console表示なんで若干制約受けるが(カラーやグラフバー等)conkyの機能が丸々使え、
文字数を気にせず表示できます(その気になればrssをだらだらと)。
dzenにconky表示してる人がいて思いついたが概出ならスマソ。
まあ、CPUリソースとかが流れちゃうのは気持ち悪いちゅーのはあるが…
- 321 :
- >〜一行内容を記述
>〜一行で内容を記述
- 322 :
- >>320
すんげー、なんでも出来ちゃうぞこれ。
多段captionにして色々表示したくなってきた。
ついでにネタ投下、conky側のカラー指定は当然無視されるが、
${exec echo "\005{= Bw}"}等と送ってやればscreen側で認識してくれる。
とりあえずやっつけのconkyrc、hardstatusは手狭になったのでconky以外は表示してないw
background no
no_buffers yes
out_to_stderr no
out_to_console yes
out_to_x no
update_interval 1.0
TEXT
${exec echo "\005{= Bw}"}$sysname${exec echo "\005{= Mk}"} ${exec echo "\005{= Gk}"}Uptime: $uptime${exec echo "\005{= Mk}"\
${exec echo "\005{= yk}"}RAM Usage: $mem/$memmax${exec echo "\005{= Mk}"} ${exec echo "\005{= wr}"} \
${scroll 30 5Proc: $running_processes/$processes Disk: $fs_used/$fs_size $fs_bar | $nodename - $kernel on $machine} \
${exec echo "\005{= Mk}"}$time
- 323 :
- >${exec echo "\005{= Bw}"}等と送ってやればscreen側で認識してくれる
うわー、さすが2chこんな手あったんですね。
色も付くなら、もうbyobuいらんね〜。
あれもこれもでhardstatusがいっぱい、タイトル表示するスペースが無い。
- 324 :
- >>320-323
バッドノウハウ過ぎー
- 325 :
- 正攻法が無いのならいいんじゃないの。
- 326 :
- 正攻法はscreenを改造して、そういう設定が簡易にできるようにすることかな。
procmail捨て捨てしてmaildropが出来たという感じで。
- 327 :
- うちの環境だとconkyで${exec echo "\005{= Bw}"としてもそのまま文字列になっちゃう。
試しにbacktick 0 0 0 echo "\005{= Bw}" と直線やると巧くいく。
どっちの問題かようわからん??
- 328 :
- 個人用途ならそれでもいいかも知れんけど、ノウハウにすらならなくね?
ああでもちゃんとコミットするならそれでいいか。パッチ公開とかforkとか残念な結果にしかならないよな。
- 329 :
- 元から、お手製スクリプトで色々出来た部分を、汎用性の高いconkyで置き換えられるって話だから、
副次的なバグでもあれば別だけどscreen側をどうこうってのは違うんじゃないかな?
- 330 :
- リソースなんてそんな表示させておきたいもんかね?
個人的にはゴテゴテしてんのはあんま好きじゃないな
- 331 :
- >>327
echo -e
- 332 :
- >>331
感謝、echo -e で出来た。
シェルの問題なのね。
- 333 :
- そもそもscreenがバッドノウハウの集合体じゃね
- 334 :
- バッドノウハウであることを喜々として言うやつには虫酸が走る
- 335 :
- elscreenとどうちがうんだ?
- 336 :
- 意味がわからない
- 337 :
- バッドノウハウってどの辺の事言ってるんだろ
- 338 :
- ローカルの screen からリモートの screen に接続することってできるんでしょうか。
今は、ローカルの screen をデタッチして、リモートに ssh で接続し、リモートの screen にアタッチしてます。
- 339 :
- (screen内でsshしてリモートのシェルからアタッチするだけじゃ)いかんのか?
- 340 :
- >>339
それだと screen が2重になりませんか?
- 341 :
- >>223-228
- 342 :
- >>341
ローカルで screen 開いている端末とは別に端末を開いて、そこから ssh してリモートで screen
ということで理解しました。
慣れてないのでまだしっくりこないですが、しばらくこれで運用してみます。
ありがとうございました。
- 343 :
- screen2重だと、慣れてるので操作自体に困らないな。
リモートはエスケープの2回押しするように指が覚えたらしい。
3重になると途端にわけわかになるけど。
- 344 :
- screen2重って使ってる人多いのか
すげえな俺には無理
- 345 :
- 2重どころではない人の例
ttp://shyouhei.tumblr.com/post/313410522/screenrc
- 346 :
- いやそういう表示のための多重化じゃなくて
普通の端末操作として多重のscreenを使うという話でしょ
- 347 :
- screen使ってて間違って違う鯖をシャットダウンした経験は誰でもあるはず
- 348 :
- screenのせいにするなよ!
リモートからログインできればscreen関係なしにそんなこと誰だって一回はやるだろ!
- 349 :
- 意外と無いな
なぜだろう?
- 350 :
- シャットダウン自体をめったにしないからとか?
俺はそうなので、違う鯖をシャットダウンした!なんてことはないなぁ。
- 351 :
- シャットダウンするときはマシンの電源をいじれる場所に行くから
だな
- 352 :
- ホスト名をプロンプトに表示してるし、トラブル時を除いて遠隔からの
リブート自体基本的にやらないから、そういうので焦ったことは無いかも。
計画的に電源落とす時はシリアルケーブル繋いでやるし。
- 353 :
- VMWareなんかでテスト環境で遊んでる時位だな、リブート頻繁ってのは
- 354 :
- サーバーラックの後ろに廻って
シャットダウンした鯖の電源ケーブル抜いたつもりが
違う鯖だったので焦ったことはある
- 355 :
- >>354
絶対に許さない
- 356 :
- そもそも鯖室って、照明暗いのに、電源ケーブル黒いし、最近は
黒い筐体が流行で困る。
- 357 :
- >>354
ベタ過ぎる
構築時にタグつけないとね
- 358 :
- 荷札が間違っていたでござる
- 359 :
- テストしろよw
- 360 :
- こういうときってUPS有っても意味無いよな
- 361 :
- 後ろのファンのところにリボン付けて、
動いてるかどうかを見るのが良いらしい。
- 362 :
- サーバー用鯉のぼりとか出すと売れるかもしれないな。
- 363 :
- サーバメーカは5文字くらい表示制御できる液晶を前後の蓋に
付けて欲しいよな。そんで起動時にhostname>/dev/namelabelすると
そこに表示されるの。
- 364 :
- Cobaltとかそんな感じだな
- 365 :
- HPサーバについてるランプはそんな目的なのかな
iLO2経由で制御できる
たしか前面にしかなかったけど
- 366 :
- そんな目的の機構は結構各メーカーにあるね。
サーバ単位で同定するためのとかHDD単位で同定するとか
- 367 :
- RAIDのHDD取り違え事件はかなりヤバイ
マシンの電源ケーブル間違えて引っこ抜く方がまだましな位
- 368 :
- >>362
鯉幟よりも鯖幟で売り出した方が売れるかな
- 369 :
- >>363
HDDにも液晶付けて欲しいわ
- 370 :
- putty+screenで
termcapinfo xterm* ti@:te@
と設定したのですがスクロールが出来ません
何か他に設定があるんでしょうか?
- 371 :
- debian etchのパッケージを使ってたんですが、screen上でmuttの表示が崩れるのを直したくて
でかいのネットさんの非公式パッチを頂いてソースからビルドしてみたのですが
どうも表示の崩れが直らず、試行錯誤していたところ、どうも defbce "on" をすると崩れなくなる
ようでした。本家Gitの最新ソースでも、やはり同じ結果でした。
みなさんそういう感じでしょうか? それとも何か自分おかしなことしてそうでしょうか?
- 372 :
- screen頻繁に使っている人がいそうなので質問させてください
こちらの方は、GUIやブラウザの重さに飽き飽きしてきました。
なるべくCUIで快適にすごしたいのですが、みなさんはどのように画面を構成しているのでしょうか?
おすすめな環境構築の方法を教えてください。
主にWindowsからUnix機へ繋いで繋いで使うことも多いのですがさんこうにならないかと
- 373 :
- 日本語入力ON にして keybind で paste . すると
<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 でいきたいけどダメかなこれ。
ダメですかね。まーいいか。いやあまりよくない。
- 374 :
- なんで「あ」なの?
日本語モードで A をタイプインしたら普通「ち」だろう
- 375 :
- >>373
bind a eval 'paste .'
とか
- 376 :
- >>374
普通ローマ字入力だろう、と思っていたが。
カナキー入力とか azik より少数だと思ってましたよ。
>>375
それ paste . と同じじゃないです?
わざわざ書くからには違うのか。からくりが解らん。
- 377 :
- ギレン総帥は、カナタイパー。
俺もカナタイパーだから分かるw
- 378 :
- screen-4.00.03/zsh-4.3.11/mintty-svn/cygwin-1.7 で
別ウィンドウに ~/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 で実行できない原因は何が考えられるでしょうか?
- 379 :
- screen `which hoge` ならどうですか?
zshの内部コマンドだったってオチとか?
- 380 :
- >>379
screen `which hoge` だとちゃんと実行できました
(which hoge がフルパスを返すので当たり前かもしれませんが)
zsh の内部コマンドではなく自作のpythonスクリプトで
パーミッション755にして実行可能になってます
- 381 :
- .zloginは
- 382 :
- >>381
~/.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 できるようにしたいのですが、
何かわかる方いれば助言をお願いします。
- 383 :
- 方法1 素直にログインシェルをzshにする
何らかの理由でそれができないなら
方法2 .bashrcにPATHを設定するスクリプトを書く
- 384 :
- 回避策としてはそれだろうねぇ。
なんでbashが起動してるのかわからないけど。
- 385 :
- なんでって ログインシェルが/bin/bashだからでしょ?
- 386 :
- > ~/.screenrc には shell zsh と書いてます。
> bash から screen を起動すると zsh が立ち上がります
じゃあこの挙動が不正ってこと?
- 387 :
- .bashrcに exec /path/to/zsh って書いとけよ
- 388 :
- >>382
>端末の起動には、mintty.exe -e screen -xRR のショートカットを作成し
cygwin は詳しくないんだけど、おそらくそれだと zsh の環境変数が screen 本体に継承されてないので、
screen -X setenv PATH "$HOME/bin:$PATH"
してみたら?
自分でも試してみようと久々に screen をインストールしていざ起動したら「$TERM too long - sorry.」
とか出るし。もういいや。
- 389 :
- >>383-384
ログインシェルを 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 のプロセスは残らないんですがどこ行ったんでしょ?
ともかく原因と対処法はわかりましたのでありがとうございました。
- 390 :
- >>389
SHELL=/bin/zsh
みたいな環境変数セットすればいい
- 391 :
- ・utf-8
・ambiguous widthは2
・↑の設定のhogeterm + screen上でdialog等の罫線表示が崩れない
これを実現できる設定教えて欲しい。
実現できるなら端末エミュはなんでもいい。
・euc-jpにする
・ambiguous widthは1で我慢
・罫線表示するようなコマンド打つ前にset TERM=vt100
などの回避策はなしで。
誰も答えられないようなら
「いや〜screen内で全部済むからw」
とか言う奴を見かけたら次から心の底でバカにすることにする。
- 392 :
- euc で困ることないし
- 393 :
- >>391
その3つの条件だけなら、terminfoいじればいいよ。好きな端末を起動してこ
のコマンドを実行しておくだけ。
$ infocmp | sed 's/[a-z]*acs[a-z]*=[^,]*,//' > /tmp/tmp
$ tic /tmp/tmp
- 394 :
- だれもが通る道だ
そしてascii表示でお茶を濁す。この人とか
ttp://d.hatena.ne.jp/niha/20090130
- 395 :
- んん?
その人がしてるのはmltermにせっかく1カラムのDEC特殊文字で
表示してくれる機能あるのにscreenが間に入ると先に処理されて
mltermの機能が生かせないって話だ
- 396 :
- とりあえず mlterm+screen+w3m で折り合ってくれている現状で満足だ
深入りすると腹が立ってくる
- 397 :
- infoの出力箇所をかえることはできますか?
4.1だとステータスラインにでてくれるけど4.0.3だとウィンドウのタイトルバーにでてくるのでいつも見失う
- 398 :
- 本番サーバーに4.1いれて解決した
- 399 :
- コピーモードで一旦スペース押してマークして、
でもやっぱやめたくてマークをキャンセルするキーってありますか?
- 400 :
- >>399
なさそうだけどx(マークとカーソルの入れ替え)で対処できる。
- 401 :
- >>400
なるほど!
xは押してみたけど一見してダメだと思い込んでました。
ありがとう!
- 402 :
- 質問させてください
detachして再接続をするとウインドウの分割した状態が復元されません
公式のFAQを見るとウインドウの復元は基本的にできない、もしやるならscreenをネストするとありました
普段ウインドウを分割している方はどのようにセッションを復元されていますか?
Screen version 4.00.03です
- 403 :
- tmuxの質問はここでいいのかな?
- 404 :
- tmux その1
http://hibari.2ch.sc/test/read.cgi/unix/1268778432/
- 405 :
- あっちでお願いします。
- 406 :
- screenの中からX clientを起動したときに
外のDISPLAYに接続できるようにするスクリプトをかいてみたです。
screenの中のemacsからでもいけます。
hg clone https://koie@bitbucket.org/koie/screenx
- 407 :
- 今osxのiTerm2で使っているのですが
ctrl-tabで次のscreenに移動するのが実現できません。
どなたかosxでやっているかたいませんでしょうか?
いちおう.screenrcには他のOSでもやっているとおりで
bindkey "^[[1;5I" next
bindkey "^[[1;6I" prev
と書いているのですが
sshで外からwindowsのminttyでmacにつなぐと
うまくいくので.screenrcではなく
iTerm2の設定の問題だと思うのですが
- 408 :
- tab = ctrl+i だと思ったことはない?
- 409 :
- ないです。
- 410 :
- vis の入力で ctrl-tab 打ってみれば?
osx に vis あるかしらんけど。
- 411 :
- OSXにも vis あるよ
NAME
vis -- display non-printable characters in a visual format
SYNOPSIS
vis [-cbflnostw] [-F foldwidth] [file ...]
でもiTerm2の問題だと思うならMac板のUNIX系スレのが良いのでは
- 412 :
- >408 を理解できない人になにをいっても無駄でしょ
- 413 :
- ttp://bogytech.blogspot.com/search/label/screen
GNU screen JIS X 0213 /UTF-8 拡張パッチ
というものを見つけました。
jless utf-8 パッチとkterm JIS X 0213/UTF-8 パッチもあり。
(個人的には、jless utf-8 パッチがありがたいです)
- 414 :
- screen -X exec sh -c "xsel -i < ~/.screen_exchange" ; sleep 0.1; xsel
を実行するとよく 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
でも変わります。
- 415 :
- どうやら screen の exec 終了時に SIGHUP が送られているようです。
xsel は background process になるので、すぐに exec が終わり
SIGHUP 発行となっているようす。
なので nohup を使って以下のようにすることで、問題は解消しました。
screen -X exec sh -c "nohup xsel -i < ~/.screen_exchange &>/dev/null"
# nohup 使いにくい。nohup.out 作ったり、その旨のメッセージを出したりしなくていいのに。
- 416 :
- 何も案を出せずにごめん、そして解決方法を書いてくれてありがとう
- 417 :
- xselをwaitしたらいいのでは?
- 418 :
- >>417
自分自身でforkするプロセスはwaitできないよ(笑)
>>415
xsel -n で、forkしないようにできるけど。
あと、nohupの代わりに trap '' 1 で HUP無視する方法も。
- 419 :
- 復帰
- 420 :
- >>418
-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 書かなくていいし多分速いけど。
- 421 :
- どのnohup/trap使ってる? 内部/外部?
tcshの内部nohupを使えば解決するような希ガスんだが、どうしてもzsh使いたいの?
- 422 :
- 別にそんなことはありません。
nohup は /usr/bin/nohup です。
trap は sh というか bash です。済みません、まぎらわしいですね。linux です。
zsh は試しに使いましたが、screen に渡しているのは bash です。
# nohup 使う方法も zsh から呼ぶとなぜかうまく動かなかったし、
# 適当に試しただけですが、&! も setopt nohup もうまく動かず、disown はちょっと違うので、
# 結局 zsh は採用していません。
その builtin nohup は正に期待するもののようですが、
今は csh/tcsh を入れていないので残念ながら &>/dev/null しときます。
- 423 :
- ウインドウを新規作成した時
ホームディレクトリじゃなくて、
作成元のディレクトリをカレントディレクトリにしたいのですが
どうすればいいですか?
- 424 :
- シェルから screen と入力してウィンドウを新規作成すると
起動元のシェルのカレントディレクトリが引き継がれるよ
- 425 :
- >>424
ほんとだっ
こんなに簡単に実現できるとは
ありがとうございました
- 426 :
- 各windowのカレントディレクトリのリストを確認したいのですが
どうすればできますか?
- 427 :
- whoコマンドかwコマンドでscreenから起動されてるttyを調べて
/procファイルシステムを舐めてカレントディレクトリを調べる
スクリプトを書けば不可能ではなさそう
- 428 :
- screen使うと、viとか起動/終了した時に画面が戻らないんですけど、
普通のxtermと同じように画面を復帰するようにできませんか?
- 429 :
- TERMINFO/TERMCAPのscreen端末設定を修正すればできるよ
$ man terminfo
- 430 :
- >>429
それはすでにやりましたが、直りません。
「man hoge」の回答者って確認せずに回答する人多いですよね。
- 431 :
- そりゃ環境もやったことも書かないような間抜けにはそういう回答しかできないのでは
- 432 :
- >>431
横レスだが、環境問わずscreenではそもそも >>428 の設定は不可能なのだが、
可能かのように知ったか回答してる >>429 が間抜けかと。
- 433 :
- つまり「できない」がベストアンサーってことですね
- 434 :
- tmuxならできる
- 435 :
- >>428
altscreenをonにしろ
- 436 :
- >>435
できました!!ありがとう!!!
ちなみにterminfoの設定は元に戻しました(笑)
- 437 :
- 横レスだが、環境によってはできるにもかかわらず、環境に問わず不可能だという回答をする人は…
- 438 :
- 横レスだが、環境問わず TERMINFO/TERMCAPのscreen端末設定では設定不可能だよw
- 439 :
- おっ条件が増えたぞ
- 440 :
- くやしいのう くやしいのう
- 441 :
- vim上でHomeやファンクションキーが効かないので、
.screenrcで
term xterm
と元のTERMを書いちゃったんですが、これって正しい使い方ですか?
そもそもなんでscreenを起動するとTERM=screenになるのか
意義がわからないのですが。
- 442 :
- >>441
screen自身がエスケープシーケンス解釈するから、アプリケーションから
screenの知らないエスケープシーケンスが飛んでくることを避けるために
TERM=screenにしてるんだよ
- 443 :
- term xtermと書くのって普通ですか?
それともファンクションキーとかを使うのはあきらめる?
- 444 :
- 色々調べた結果、~/.screenrcに
termcapinfo xterm* 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm:k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~'
とk1からk4を書いておけばファンクションキーが使えるようになりました。
多分term xtermでも大丈夫と思うんですが、screenの知らないエスケープシーケンスが
という問題はなくなるかと。
- 445 :
- >>184の問題って今どうなってるの?
あんまりみんな気にしてないのかな
- 446 :
- >>445
tmuxだと環境変数を自動で設定してくれるみたい。
screenだとvncのなかでscreenを起動して
Xは全部vncに表示するのが一番簡単・無難かと。
detachしてもXは生きたままにできるし、遅い回線でも使い物になる。
ただvncだとscreenとXが同じマシンのときに遅さが気になるので
screenxというのをつくってつかっています。
- 447 :
- >>446
>tmuxだと環境変数を自動で設定してくれるみたい。
マジですか
どういう仕組みでやってんだろ
- 448 :
- >>447
すまん、やりたいことが
すでに起動しているshの環境変数を書き換えることならNoだわ。
あたらしいwindowを開いたときに、そのときの環境変数が設定されるだけ。
- 449 :
- コピーモードから抜けるとき一瞬もたつく感じしない?
とくにコピーしてから抜けるときは
設定いじればもう少し早くなるんだろうか
- 450 :
- layout newでレイアウト情報が作成されるらしいけど、どこのファイルに書いているの?
- 451 :
- それって colon から打つの?
>>449
特にしません。
>>441
TERM=xterm だと xterm の制御シーケンスを扱えない端末からマルチディスプレイモードで
アタッチした時に困ったことになる。マルチディスプレイモードじゃなくても。
または、端末より screen が認識する(かつ screen のみでなんとかなる)
制御シーケンスの方が多いというケースも理由としてありえるな。
>>445
うーん…
tty の入力監視 wrapper から screen を起動する。
wrapper では入力検知時に pid を file などに書く。
zsh の preexec とかで pid から環境変数を取り込む。
みたいな?
- 452 :
- >>451
そうっす。prefixの後に :layout new
もしかして/tmpに作られてんのかな
- 453 :
- man screen になかったけど開発版の機能か。
それ内部的に作られてるだけなんじゃない?
- 454 :
- >>453
一回どっかのscreenで:layout newすれば、その後に別のセッションを新規に作っても
そこでもレイアウトは有効になってるんで、どこかに書いてるのかと思うんだけど・・・
- 455 :
- 違う端末でも、じゃなくて違うセッションでも共有してるの?
古い記述だけど ttp://yudai.arielworks.com/memo/2008/11/08/184006 には
ファイルに書かれないとあるね。今はあるかもしれないけど。
セッション間共有なら screen として特別なファイルはなくてもできるだろうし、
強いていうならソケットディレクトリ内のソケットがそれにあたるかな。
- 456 :
- LANG=C man screen
保存したければlayout dump使えって
- 457 :
- なんだ man にあるんかい。
開発版っていってもそんな新しい機能じゃないからあるか。
開発版じゃない方には当然書いてないけど。
- 458 :
- 昔 sudo のパスワード不要期間って window 間で共有してた気がするけど、
今は端末毎に制御しているのか window 毎に管理されてるよね。
端末毎は別の方がいいと思うけど、screen のセッション内で
分けてもあまり意味がない気がする。
でもさくっと screen のセッション内で共有するのはならないか。設定とかで。
端末毎の別管理をやめるとかなら sudo の設定であるかもしれないけど。
- 459 :
- >>458
sudoの作りは知らんけど、端末上で実行するプログラムから見ると、普通は
screenの別windowと端末の別ウインドウは区別できないからね。
- 460 :
- >>458
window間じゃなくて、ホスト内で共通のticket timeoutだったんじゃないの?
(screen内に暮らしていると、どっちも同じ事ではあるんだけども)
sudoers(5)のtty_ticketsがoff。要するにsudo(8)の話題。
- 461 :
- うんそう。書き方が悪かったね。window 間共有は本質として書いた訳じゃない。
tty_tickets の設定か。thx.
で言いたかったのは screen 内では端末毎に分けてもあまり意味ないし
STY あたりで分けてるといいかなー(環境変数を使う訳にはいかないだろうけど)という
screen user の勝手な考え、だったんだけど…
よく考えたら screen 内で sudo 使ったんなら外からアタッチできるんだし、
突き詰めると端末、セッションで分けても意味ないね。
# 突き詰めなければ少しは意味あるか。STY あったらそれで分けるとかで。
いつも screen 内なら tty_tickets off でいいのかもな。
- 462 :
- つーか俺は常にオフ。
sudoの仕様が変わった時から。
- 463 :
- windowsからputtyでmulti display modeなscreenをアタッチしたときに文字コードがリセットされちゃいます。
毎度:encoding utf-8 utf-8しないといけないぽです。
linuxではこんなこと無いんですが、freebsdだとなってしまいます。
何か原因あったりするんでしょうか。
以下抜粋です
> grep encoding ~/.screenrc
defencoding utf-8 utf-8
encoding utf-8 utf-8
> cat /var/db/ports/screen options
_OPTIONS_READ=screen-4.0.3_8
WITH_CJK=true
WITH_INFO=true
WITH_MAN=true
WITH_NETHACK=true
WITHOUT_XTERM_256=true
WITHOUT_HOSTINLOCKED=true
WITHOUT_SHOWENC=true
- 464 :
- screen縦分割ってそろそろ標準になった?
まだ?
後、分割を1つのセッションにしてC-a nで別セッションでは一画面、更に別のセッションでは横分割みたいにしたいんだが
まだかね?
- 465 :
- byobuの話題もここでいい?
ステータスに任意の監視項目を追加するために、man byobu にあるサンプルを
~/.byobu/bin配下に作ってみたんだけど、うまく表示されない。
#!/bin/sh
printf "\005{= bw}%s\005{-}" "$(uname -r)"
海外のフォーラムでも話題になったようなんだけど、わかるかた
何かアドバイスください。
http://unix.stackexchange.com/questions/41596/colour-bleeds-right-when-writing-a-custom-script-in-byobu
- 466 :
- >>463
putty(ssh client)側の環境変数LANGとかLC_*とかの設定じゃないのか?
- 467 :
- >>466
亀レスに亀レスなんだけどありがとう。今試したらばっちり問題解決されますた!
- 468 :
- 保守
- 469 :
- screen内で新規作成されたセッションのシェルって、最初にそのscreenを作ったときの環境変数とかを引き継いだりしますか?
それとも純粋なログインシェルとして処理されますか?
- 470 :
- >>469
env HOGe=hoge screenで起動してみたら、引き継がれるっぽいね。
- 471 :
- >>470
ありがとうございます。どうもそうみたいですね。
何個もセッションがある状態で.zshenvや.zshrcを書き換えると、全セッションを落として
screenを作り直すのがすごい億劫になってしまいますね。
- 472 :
- screenを起動したマシンでssh-agentを起動するのをつい忘れて、
手元のマシンからのagent forwardingでscreenを起動してしまうと
$SSH_AUTH_SOCK的な意味ですごく億劫になる。
- 473 :
- ssh-agentやdisplayをどうするかというのは悩ましいところだよね
最近はめんどくなって、ログインするホスト全部に鍵(しかもパスフレーズなし)を置いちゃってるし…
- 474 :
- ホームディレクトリを共通化したらssh楽になったYO!
sshを受けるgatewayでscreenをたてっぱで楽ちんだYO!
- 475 :
- それ普通やん
- 476 :
- セッション内で何個もウィンドウを立ち上げたまま長期間使い続けてると
セッションが死ぬことがある
いまいち再現性がなくて厄介だわ
- 477 :
- エスパーするとシェルのTMOUT変数とか?
- 478 :
- >>477
zshなんだけどTMOUTはセットされてなかった
長期間というのは2,3週間くらいかな
いちおう環境晒すとCentOS6.2、zsh 5.0.2、screen 4.01.00dev
- 479 :
- >>478
ゴミファイルを消すcronのスクリプトが、
screen用のソケットファイルを古いと思って消してしまってるとか?
- 480 :
- >>479
cronは自分ではいじってないんだけど、デフォでそんな設定になってるっけ?
あとで確認してみます
てか、screenが死ぬなんてのはやはりレアなことなのか…
- 481 :
- 調べたら普通にcronで/tmp以下を削除するtmpwatchの設定がされてた。
てか、/tmpを掃除するのがcronの仕事だと今頃知った・・・
でも最終アクセス日時から10日以上が対象だから、screenソケットファイルは
まず対象にならないはずだけど、いちおうチェックしてみます。
- 482 :
- 少し長いですが質問いたします。
[prefix] Ctrl-H を prev に設定しているんですが、ローカル(Fedora Linuxとか)でxtermを
立ち上げる場合もあれば、Winodwsからputtyで接続したり、あるいはVNCでログインして
xtermを立ち上げる場合もあります。
しかもWinodwsではyamyというキーバインドソフトで常時Ctrl-HをBackspaceにしています。
こういう状況で、設定をいじったりしているうちにprevが効かなくなって困ることがあるのですが、
この手のトラブルはどういう風に調べて解決していけばいいですか?
あと、このような複数の接続方法に共通の.screenrcを使うのはそもそも推奨されないことですか?
# screenrcは他人のをパクったレベルの人間なので、キーコードとかtermcapとかの仕組みは
何度調べても理解できず、自分的に鬼門になっています・・・。
- 483 :
- あ、もちろんyamyをオフにしておくというのは試しています。が、不思議なことに
[prefix] Ctrl-H の効き具合に影響があったことはないです。
- 484 :
- BS(0x08)とDEL(0x7F)を交換してるやつがどこかに潜んでいるんじゃないの?
Linuxの端末エミュレータにはこの手の余計な世話するのがいるよ
[prefix] DEL も prev に設定しておけばよい
- 485 :
- >>484
レスありがとうございます。
.screenrcで bind ^? prev と書けばいいのかな、と思ったら駄目でした。
実際にどんなキーコードがscreenへ送られているのか調べる方法があればなぁ・・・
- 486 :
- Ctrl+v → BS とか Ctrl+v → DEL とかそんなん。
- 487 :
- GNOME端末のプロファイル設定でBSキーのコードがASCII DELになっていたのを
Ctrl-Hに変えると解決しました。Ctrl-v もちゃんと ^? から ^H に変わってました。
でも、今までシェルとかでは普通にバックスペースの動作になったんですよね。
シェルが^?も^HもBSとして解釈してるからかな?いまいちよく分からんです。
というわけで皆様お騒がせしました。ありがとうございました。
- 488 :
- 今動かしてるshを、screenで拾いたいんだけど
どうしたらできるかな
- 489 :
- 無理じゃね。
- 490 :
- 無理だね
- 491 :
- tmuxは出来る
- 492 :
- >>491
kwsk
- 493 :
- しったかにかまうな
- 494 :
- reptyr使えばできるよ
linuxしか無理だけどね
- 495 :
- grepの実行結果が、端末の一番右端の文字が「.」だとスペースに置き換わってしまうんだけど、何故だろう
screenじゃない素の端末だとそんなことないんだけど
- 496 :
- どうも端末がGnome terminalで、grepにオプション--colorを付けてるときに起きるみたい
screenと端末って相性みたいなのあるんですかね?
- 497 :
- neercs ってやつ使ったことある人いる?
- 498 :
- byobuを布教されたんだが、凄いのかこれは?
- 499 :
- >>498
screen/Tmuxをカスタマイズをしなくても便利に使える感じかな
- 500 :
- hardstatus のアクティブウィンドウ前後のウィンドウって %-w や %+w でしか指定できなくて、
パターンも「%n %t」で固定されちゃってるけど、細かく設定できるようにならんのかなぁ
screenしか使ったことないんだけどtmuxやbyobuだったらできたりする?
- 501 :
- screen-4.2.1が出たらしい
http://ftp.gnu.org/gnu/screen/
Debianパッチの反映かな?
最近サイド3から 2ch.scに書き込めなくなった
いまフォンブラウン市から書き込んでる
- 502 :
- あれ トリップが違う
間違えたかな?
- 503 :
- 一つ前に copy したものを paste することってできませんか?
(Emacsでいうキルリングの C-y M-m みたいに)
- 504 :
- 間違えました、C-y M-m ではなく C-y M-y でした
- 505 :
- splitで画面を分割してるときにマウスホイールでスクロールさせることは可能ですか?
- 506 :
- はい、可能です。
- 507 :
- すでに起動しているシェルを
あとからscreenに取り込みたい
けど、そんなことできないよね?
- 508 :
- Linuxならreptyr使えるんじゃない?
使ったことないけど。
- 509 :
- 次スレから端末多重接続総合スレにしない?
- 510 :
- 5年後におぼえてたらまた提案してくれ
- 511 :
- 保守
- 512 :
- screen上だとnmonがうまく表示されん
まぁglancesとか他の使えばいいか
- 513 :
- >>509
> 次スレから端末多重接続総合スレにしない?
screen と tmux派でケンカ始めたりしない?
- 514 :
- > 端末多重接続
日本語に無理矢理直してる感が酷いな
スクリーンマルチプレクサでいいじゃねーか
- 515 :
- 実質screenとtmuxだけなんだからscreen/tmuxでいいだろ
まあ次スレが必要になるのは5年後だがな
- 516 :
- 5年後か・・・
さすがに2chがどうなってるか分からんな
- 517 :
- screenは保護されるべきだ。
いまだにK&R C形式でソースコードで書かれてて
実際に使われてるアプリって少ないぞ。
- 518 :
- そこは別にどうでも………
- 519 :
- >>517
vimのことか?
screenもvimもグローバル変数が山盛りで、自分みたいな素人は読むのが大変
- 520 :
- 3/3以降、このスレもopen2chに移転するの?
- 521 :
- 人それぞれじゃん?
- 522 :
- GNU Screen上でemacs-evilを使うときに
.screenrcにmaptimeoutを設定し、
$ emacsclient -nw text.txt
で立ち上げるとEscは正常に機能するんですが、
$ emacsclient text.txt
では正常に動きません。
なにか解決策はありませんでしょうか。
- 523 :
- 4.3.0が来てる
- 524 :
- 4.3.1も来た
- 525 :
- コマンドの出力が長すぎてページがスクロールしてしまう場合に自動的にlessみたいに
ページングすることってscreenやtmuxでできないのかね?
- 526 :
- less使えばいいだろ
- 527 :
- どんなコマンドを実行したときも出力量に応じて自動的にページングするようにしたい
- 528 :
- 今できなくてもいいんで原理的には可能か知りたい
- 529 :
- screenだとバックスクロールは基本的にcopyモードでしかできないので
多分無理。tmuxはわからない。
- 530 :
- screenが擬似端末から読み込んだデータを実端末に書き込むときに、
・短時間内に端末サイズ以上の行数を書き込んだ
・書き込む文字列にはカーソルを移動するようなエスケープシーケンスは含まれていない
ならポーズするという感じか。
完璧な解は無理なのかな。
- 531 :
- こーゆーアプローチじゃだめなの?
http://qiita.com/b4b4r07/items/c32a911d7d40907ae3b5
- 532 :
- それってコマンド打つたびにパイプで | richpager としないといけないんじゃない?
それならそこにも書いてある通りless -Fでいつもやってる($LESS="-iFMXR -j10"と設定している)。
パイプしないでも自動的にページングしてほしい。
シェルで全てのコマンドに対して自動でパイプするようにするとvimとか端末を使うアプリが困るし。
自動ページングというのはscreen(または端末ドライバ)のような端末そのものが持っているのが
ふさわしい場所じゃないだろうか。
ちなみにlessでもシンタックスハイライトとかは$LESSOPENで実現できる。
- 533 :
- 誰か altscreen on の時に一番下の行を一番上の行に出力って誰か出来ませんか ?
例えば editor viewer filer でも一番下が行数等の出力先なので一括して変更出来ますし
端末の方いじった方がいいのかな..とも思うけど
screenでやった方が便利だしやっぱりscreenいじりたい
別の話だけど SetRendition, SetRenditionMline に文字判定で色いれると良い
foreGround の色指定されてない時だけ判定
お勧めは 記号種類別(例えば'
- 534 :
- 誰か altscreen on の時に一番下の行を一番上の行に出力って誰か出来ませんか ?
例えば editor viewer filer でも一番下が行数等の出力先なので一括して変更出来ますし
端末の方いじった方がいいのかな..とも思うけど
screenでやった方が便利だしやっぱりscreenいじりたい
別の話だけど SetRendition, SetRenditionMline に文字判定で色いれると良い
foreGround の色指定されてない時だけ判定
お勧めは 記号種類別(例えば”’は同じ使われ方が多いから同じ色)、数字、 カタカナ、ひらがな、その他の言語や記号、A-zだけ色なし
画面のみの判定だから軽い点も良い
後、変数一個用意して
連続で同じ色だったらスルー
プログラマーじゃないのでコードに自信ない
けど異常に気に入ってるから毎回 screen 入れる度に display.c 書き換えてる
か誰
’半角で遂ぎれた...失礼
- 535 :
- もっと整理して書け。何がしたいのかわからん
- 536 :
- >> 誰か altscreen on の時に一番下の行を一番上の行に出力って誰か出来ませんか ?
と
>> SetRendition, SetRenditionMline に文字判定で色いれると良い
だけです。
ついでに上はncursesの話だと書いた後思い出しました。
- 537 :
- >> 誰か altscreen on の時に一番下の行を一番上の行に出力って誰か出来ませんか ?
と
>> SetRendition, SetRenditionMline に文字判定で色いれると良い
だけです。
ついでに上はncursesの話だと書いた後思い出しました。
って2ch_scに書いてた...話だと書いた後思い出しました。
- 538 :
- screen --version
Screen version 4.04.00 (GNU) 19-Jun-16
これ4.0.4かと思った。紛らわしくないか
- 539 :
- https://savannah.gnu.org/forum/forum.php?forum_id=8780
4.5.0が出た。
- 540 :
- screenってソフトとしてもう完成してる気がする
うpでに追従する必要あるのかな
- 541 :
- changelog見て必要って思うなら追従すればいい
- 542 :
- めっちゃ過疎っているんでレスもらえるか不安ですが・・・
シェルのプロンプトを以下のように二段にしているんですけど、このカレントディレクトリを
screenのバッファにワンキーでコピーするキーバインドはどう書けばいいですか?
[ユーザ名@ホスト名] カレントディレクトリ
$ ■ ←←←カーソル
- 543 :
- copy modeに入らずに画面上から一部を拾う方法が思いつかない。
カレントディレクトリをコピーしたいだけならshell側で
f=`tempfile`; pwd > $f; screen -X readbuf $f
とかやれば一応できる。これをstuffで実行文字列として送るという
方法なら取れると思う。
- 544 :
- ところでscreen 4.6.0出てましたね。
http://git.savannah.gnu.org/cgit/screen.git/log/?h=v.4.6.0
ChangeLogより
http://git.savannah.gnu.org/cgit/screen.git/tree/src/ChangeLog?h=v.4.6.0
Version 4.6.0 (28/06/2017):
* Update Unicode wide tables to 9.0
* Support more serial speeds
* Improved namespaces support
* Migrate from fifos to sockets
* Start viewing scrollback at first line of output
ChangeLogといいつつNEWSファイルの位置づけになってるんだな。
- 545 :
- C-a 数字で window を選択する際に、キーボードの数字キーの並びと合わせたくて、
window番号を 1始まりにしたい。
https://wiki.archlinuxjp.org/index.php/GNU_Screen#.E3.82.A6.E3.82.A3.E3.83.B3.E3.83.89.E3.82.A61.E3.81.8B.E3.82.89.E8.B5.B7.E5.8B.95
にあるように .screenrc に
bind c screen 1
bind ^c screen 1
bind 0 select 10
screen 1
を入れると、C-a c したときには 0番を無視してくれるんですが、
コマンドラインから screen vim prog.c
などとしたときは 0番にwindowが作られてしまいます。
この場合でも 0番を無視する良い方法はないでしょうか?
- 546 :
- 誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。
グーグル検索⇒『宮本のゴウリエセレレ』
4FHO84LNCS
- 547 :
- ☆ 日本の、改憲をしましょう。現在、衆議員と参議院の両院で、
改憲議員が3分の2を超えております。『憲法改正国民投票法』、
でググってみてください。国会の発議はすでに可能です。
平和は勝ち取るものです。お願い致します。☆☆
- 548 :
- 今日4.6.2に上げてみたんだけど、zshが起動しなくなった
何事と思って調べたらTERMがbce系の状態でPROMPTに改行を意味する「$'¥n'」があると駄目みたい
- 549 :
- 知り合いから教えてもらったパソコン一台でお金持ちになれるやり方
時間がある方はみてもいいかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
HH2I0
- 550 :
- たまにhardstatusの行が消えるとこがある
多分何かのscreenコマンドを打ったんだろうけど
わかる人いたら教えください
- 551 :
- ssh foobar@example.com screen -dRU みたいなことをやりたいんですが、
なにか良い方法ありませんでしょうか?
ログインしてからコマンドを打つのがめんどくさくて。
- 552 :
- ssh -t foobar@example.com screen -dRU
で解決しました。
ありがとうございました。
- 553 :
- 過去にコピーモードでヤンクしたものを順に参照する方法ってないですか?
VIMのYankRing.vimみたいな感じで
- 554 :
- って1年半以上書き込みがない・・・
みんなtmuxに行ってしまったのかな
- 555 :
- ないと思う…外部コマンドと連携するとかしかないんじゃないかなあ
readbuf/writebuf/registerを駆使するとか
一応upstreamはそこそこメンテはされてる
tmuxの影響も多分ありそう
- 556 :
- screenほどUnixらしいコマンドもないと思う
今の子はターミナルマルチプレクサなんて使わんのかもしれんが
- 557 :2020/06/04
- VS code terminalとscreenがうまいこと融合できないかな
お前ら*BSDのカーネルをハックしますか?
【POSIX】UNIXプログラミング【BSD】
【地球シミュレータ】NECのスパコン【SXシリーズ】
w3m その8
フォント向上委員会
Common Desktop Environment
エディタ作ったよ!見てみて!
全文検索エンジン Hyper Estraier 2
ビルJからの手紙
Wanderlust その7
--------------------
☆★推薦!日本のジャスミュージシャン 2★★
昭恵は自分の事しか話してねーぢゃんwww
【WHO】 テドロス事務局長 「新型肺炎、SARSほど致命的ではない。8割が軽症、致死率は2%だ」
【肉】いきなり!ステーキ その23【真】
ジャンプ作品、黒子のバスケやハイキューの男キャラはRべき
別冊少年マガジン総合スレッド38冊目
なぜか家に大量にあるもの [324064431]
ヤマノススメ 総合スレ 205合目
【株価】米アップル 時価総額1 1 1兆円突破wwちなみにトヨタは25兆円 [816970601]
【動画アリ】 日本に入国した中国人48人、6日後に生活保護申請し32人が受給 ★2
【Glee】クリス・コルファー Part4【Kurt】
子供のころ思っていたこと
【疑問】今さら聞けない家事・料理 154【質問】
【バンダイナムコ】ガンダムネットワーク大戦 【GNT】part2
【東方神起】K-POPで好きな曲【少女時代】
【戦隊まで出しゃばる】HuGっと!プリキュア アンチスレ46【ハナクソ】
チョコットランド チートスレ(小・中学生専用)
ドラゴンズドグマ2要望スレ
新田恵海《にっためぐみ》さんのくっさい(笑)乳首(笑)
依存症患者が気ままに雑談するスレ Part.16
TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼