teminal+sshでネットワーク切替時に接続がぶつぶつ切れるので、 screenを試してみることにしました。 縦分割をやりたくなったので ソースからパッチ当ててinstallしようかと思いましたが どうせやるならhomebrewで入れたかったので Formulaファイルを作成して、やってみました。 formula 最終的にはコレ。 Library/Formula/screen-vertical-split.rb at master from rochefort/homebrew -GitHub #screen-vertical-split.rb require 'formula' class ScreenVerticalSplit < Formula url 'http://ftp.gnu.org/gnu/screen/screen-4.0.3.tar.gz' homepage 'h
ディノでは京都1箇所+都内2箇所+社内の計4箇所に分散されていたデータセンターを京都に集約しつつあります。私は昨日からその関連作業でネットワークチームと京都に来ています。作業の多くが遠く離れたコンピュータを介して行われる事になると同一データセンターのサーバに対してたくさんのSSHを立あげて作業するこは、ネットワーク的に効率的ではありません。クラウド環境がもてはやされている昨今おなじような状況の方も少なくないと推察されます。そこでリモートコンピュータでのオペレーションを効率的にする方法としてGNU Screenをご紹介します。というか、ネットが瞬断したくらいでいちいち文句垂れる奴は迷惑なのでいい加減にGNU Screenを使えばいいとおもいます。 やり方まず、作業用のサーバをデータセンター側に一つ作ります。このサーバへはローカルからSSHのAgentForwardを介してアクセスするので自分
縦分割が目的で使い始めた開発版の GNU Screen。CVS、Subversion、Gitとリポジトリを追いかけていると、他にも便利な機能があることが分かってきました。ここ半年ほど主だった変更はありませんが、4.1.0 のリリースに向けてドキュメントも整備されてきたようですので、2年ほど使用してきて分かってきた変更点をまとめようと思います。 4.1.0における変更点 ここで取り上げる変更点は次の通り。詳細は ChangeLog などを確認してください。 新しい機能 縦分割 レイアウト ウィンドウグループ マウス操作のサポート コマンドメッセージの抑止 外部からのコマンド問合せ 拡張されたコマンド/機能 最大ウィンドウ数の増加 ウィンドウ番号の相対指定 イベント発生ウィンドウの装飾設定 設定で使用可能な変数/書式の追加 ウィンドウリスト/画面リストの拡張 その他 256色サポート コマンド

昨日の記事で一般的な情報整理のツールを紹介しました。今日は、開発環境について紹介したいと思います。主にWeb系の開発に使っていますが、UNIX系のOSを使っている人は大抵同じような感じではないでしょうか。それでは、開発に使っているツールとその設定ファイルをお見せします。 zshshellには最強のシェルと言われるzshを使っています。zshにはbashと比べて以下のようなメリットがあります。 ワイルドカードが強力。例えばあるディレクトリの下の.txtファイルを確認するためには、ls **/*.txt などとする。 sceeen(後述)で端末を切り替えても、コマンドの履歴を共有できる設定ファイルの.zshrcは以下。# Source global settingsif [ -f /etc/zshrc ]; then . /etc/zshrcfi# depends OSTYPEcase "${
http://github.com/tily/ruby-screen http://github.com/tily/ruby-easy-screen screen をよく使っているんだけど、起動したあとの vi を開いたり、必要なログを tail したり、あらかじめ余分に bash をいくつか開いておいたり、といった動作を自動化できたら便利だろうなと前から思っていた。 (detach しておけばいいんだろうけど OS を再起動すると消えてしまうので、もっと確実な手段が欲しかった) via nbqx さんのこの辺を見ていたらそんなようなことができそうだったので色々試していたんだけど、なんかライブラリみたいのができたので公開してみる。 こんなのを書くと、 require 'rubygems' require 'screen' Screen('admin') { window('vi') { e

screenは長らく放置に近い状態なので,フォークのtscreenに移行してみた この際なのでtmuxも考えたけど,「時代はGNU screenからtmuxへ」というエントリを書いてる人がこんなこと言ってるし,モノがモノなので枯れた方を選択 (設定ファイルがそのまま使えるのでズボラしたともいう)MacPortsにはtmuxはあるが,tscreenはないのでソースから入れてやる といっても公式サイトからソースを持ってきてメイクするだけMacPortsがおかしくてあれだけ悩まされたscreenとはエライ違いだw 一応プレフィックス変えてみたけど,manとか要らないので手動でコピー % ./configure --prefix=/Users/h2/bin % make % cp tscreen ~/bin あとは設定ファイルを用意するだけ screenのものがそのまま使えるので,リン
index : screen.git screen summaryrefslogtreecommitdiff BranchCommit messageAuthorAge caption-neverFix reversedlogic.Sadrul Habib Chowdhury15 years cmd-aliasMerge branch 'master' into cmd-aliasSadrul Habib Chowdhury15 years jesstess-docsSpelling fix: usefull --> useful.Jessica McKellar15 years jesstess-screenIncrease the maximum allowed TERM length (to 30, in MAXTERMLEN).Jessica McKellar15 years m
昨日の生放送で@n0tsさんにscreenの便利な設定を教えてもらいました。 .screenrc screen -t vi 1 screen -t zsh 2 screen -tdb 3 screen -t repl 4 screen -t server 5 select 1 こう書くと、screenを立ち上げた時に自動的に5枚windowが用意されて1が選択されている状態になります。特に僕はwindow 0を使ってなかったし、かならず5毎立ち上げるのが癖になっていたのでとても便利になりました。 それぞれのwindowの使い道も何故か自分の中で決まってるので初期タイトルにそれを付けておきました。
GNU Screenは古いの? - (rubikitch loves (EmacsRuby CUI)) などを見て、tscreenを入れたくなってきたのでインストールしてみました。 インストール Steve.org.uk:Terminal Screen tscreen からソースをダウンロード。 その後、コピーモードでコピーしたテキストをmacのクリップボードで使えるように、下記の記事を参考にパッチを当てます。 tscreen に移行した - Slow Dance そしたら後は ./configure makesudo make install でオーケー。 設定 .screenrcをコピー cp -p .screenrc .tscreenrc .zshrcに下記を追加して、screenを実行したときにtscreenが実行されるように。 if [ -x /usr/bin/tscree

tscreen is a fork of GNU Screen.It is a perpetual work in progress. Why fork? I use Debian GNU/Linux, and the screen packages there have several things missing, or not available fully. Typically the response to these issues is that unless GNU Screen's upstream agrees with a patch, or change, that the Debian package will not be updated. This is a principle I agree with in general, butit does mean
時代はGNU screenからtmuxへ - Dマイナー志向 「GNU screenはもう古いので皆さんtmuxへ移行しましょう」という強烈な煽り文句が書いてあるので気になる。 とはいえ、マルチバイト文字が化けたり消えたりするんだったら、日本人としては使えないんじゃないか? 俺は tscreen というGNU Screenのfork版を使っている。オリジナルにはない機能があったり、バグが修正されていたり。 GNU ScreenにはGNU/Linuxを使い始めた直後ということは13年以上もお世話になっているので、おいそれと乗り換えるわけにはいかない。GNU Screenに依存したスクリプトけっこうあるし。とくに不満があるわけでもないし。 追記 GNU Screenでも縦分割はできる。しかし、evalコマンドに致命的なバグがあったため、最新版GNU Screenではなくて、tscreenに移行
screen は cvs 版を入れましょう screen は cvs 版を入れましょう。 縦分割が出来るようになってとても便利ですね。 cvs -z3 -d:pserver:anonymous@cvs.savannah.gnu.org:/sources/screen co screen とかで新しい screen を取ってこられます。 ところで、一部の OS (Mac OS X)には stropts.h が無かったりしてビルドがコケるので、該当 include を削ると大変幸せにビルド出来るかと思います。 必要無い(ように見える)ヘッダーを include してる意味は少し調べた限りではりませんでした。誰か教えてください。
りっくんに書けといわれたので書いた。 自宅鯖はDELL SC440でディストリはubuntu hardy。tiarra、TIG、keitairc等が動作しておりオペレーションの主目的はアニメ動画ファイルの栽培や変換など。 モバイル回線等から頻繁に接続する用途上screenを導入したわけだが、カスタマイズが大体固まったので晒しておくことにする。 screenrc 設定とかでぐぐって出てくるサイトやエントリを片端から参考にした。基本的なscreenの使い方とかは説明しないので適当にぐぐれ。 まずは.screenrcと.screen-setting。 ~/.screenrc source $HOME/.screen-setting bind . source $HOME/.screen-setting bind ^. source $HOME/.screen-setting chdir $HOM
.screen に次のように書いてみた。 screen -t cmd screen -tlog screen -tmysqlmysql -u root screen -t cpan 19sudo cpan screen -t battery 20 watch -n 300 ~/bin/battery_check.pl select 0log のところで、tail -f ... でコマンド指定したかったんだけど、バックグランドにしたりできないので、断念した。 次は.zshrcの設定ですが function ssh_screen(){ eval server=\${$#} screen -t $server ssh "$@" } if [ x$TERM = xscreen ]; then compctl -k _cache_hosts ssh_screen alias ssh=ssh_
毎日似たような操作を繰り返しているけど、 少しでも早くすれば積み重なって莫大な時間へ。 zshとscreenの組み合わせで効率アップ。 zsh "機能変更、お知らせなど -はてな技術発表会日記 - 5月15日の技術勉強会" screen "screen - 仮想端末マネージャーの使い方 (iandeth.)" zsh / screen "naoyaのはてなダイアリー - GNU screen いろいろまとめ。 "川o・-・)<2nd life - zsh + screen で端末に表示されてる文字列を補完する" 設定はパクリのパクリですが、晒しておきます。 .screenrc # prefix キーの設定 Ctrl + t escape ^Tt # onにすると、ビープを鳴らすときに錫際に音を鳴らさず、下のメッセージ領域にメッセージを表示させる。 vbell on # 最終行にウィンドウ
コマンド実行中の場合はコマンド名を表示し,それ以外はカレントディレクトリ名を表示したかったのでいろいろ調べて .zshrc をいじってみました。 .zshrc if [ "$TERM" = "screen" ]; then local -a shorthost echo $TERMCAP | grep -q -i screen if [ $? -eq 0 ]; then shorthost="" else shorthost="${HOST%%.*}:" fi echo -ne "\ek$shorthost\e\\" preexec() { echo -ne "\ek${shorthost}($1)\e\\" echo -ne "\e_`dirs`\e\\" } precmd() { echo -ne "\ek${shorthost}$(basename $(pwd))\e\\" } fi

リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く