最終更新時間: 2012-03-18 19:46

別ターミナルで動いているscreenに外部からコマンド実行
2007-03-16-2 / カテゴリ: [screen] / [permlink]

-X を使う。
Manpage of SCREENより。
-X
    動作中の screen セッションに特定のコマンドを送る。 -d や -r オプションを用いれば、アタッチされているセッションやデタッチされているセッションのみを探すよう、screen に伝えることもできる。ただしこのコマンドは、セッションがパスワードで保護されている場合には動作しないことに注意。

外部から新しいウィンドウを作る

% screen -X screen

外部から新しいウィンドウを作ってそこでプログラムを実行する

% screen -X screen lv /etc/hosts
ただし、プログラム終了でウィンドウは破棄される…

外部から指定したディレクトリをカレントとして新しいウィンドウを作る

多分そんな機能はない…
ので
% screen -X chdir /path/to; screen -X screen
chdir [path]で、新しいウィンドウを生成したときのカレントディレクトリを変更できる。んで、新しいウィンドウ生成コマンドを発行。
でも同時に実行できない…? (screen -X ... -X ... はダメだった)
注意点として、以降の新ウィンドウ生成は、ここで指定したディレクトリになってしまう。


ただし、生きている screen プロセスがない場合は、全部失敗する...
生きていても detach されていれば、atach せにゃ使えない...

ちなみに cygwin の場合、「ファイル名を指定して実行(R)...」からは、screen がコマンドプロンプト上からしか使えない(This is cannot be run in DOS mode)っぽいけど、
zsh -c "screen -X screen"
で起動は可能(実行時にコマンドプロンプトが表示されるけど)

だいなとの連携はまた後で考えよう…

cygwinでscreen
2007-03-16-1 / カテゴリ: [cygwin][screen] / [permlink]

[2005-09-25-3]の続き。
1年半放置してたけど、久々に調べてみたらよーやく解決。
cygwinのscreen
症状がまったく同じだ^^;
めんどっちいのでバイナリを落としてきた。

Cygwin に screen インストール(リベンジ)
2005-09-25-3 / カテゴリ: [win][cygwin][screen] / [permlink]

[2005-06-09-1]の続き。なんとなく再チャレンジ。

configure: checking fifos...
- your fifos are usable
rm: cannot remove `conftest.exe': Permission denied
やっぱ同じところでエラーになり、conftest.exe が削除できない。
で、調べてみると、conftest プロセスが実行中で削除できないみたい。
rm は効かないが、mv は効くようなので、configure スクリプトで rm のところを mv に変えてみた。

変更点は、4263 行目付近の
fi
rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
rm -f /tmp/conftest*
の直後に
if [ -f conftest.exe ]; then
mv conftest.exe /tmp/zzz
fi
と追加。

すると、configure はとりあえず正常に終了した。

が、make すると、
hmiyazaki@chaource:/usr/local/src/screen-4.0.2$ make
CPP="gcc -E " srcdir=. sh ./osdef.sh
AWK=gawk CC="gcc -g -O2" srcdir=. sh ./comm.sh
AWK=gawk srcdir=. sh ./term.sh
gcc -c -I. -I.    -g -O2 screen.c
gcc -c -I. -I.    -g -O2 ansi.c
gcc -c -I. -I.    -g -O2 fileio.c
gcc -c -I. -I.    -g -O2 mark.c
gcc -c -I. -I.    -g -O2 misc.c
misc.c: In function `xsetenv':
misc.c:619: error: 関数 `setenv' への引数が少なすぎます
make: *** [misc.o] エラー 1

…続く orz
Referrer (Inside): [2007-03-16-1]

Cygwin に screen インストール
2005-06-09-1 / カテゴリ: [win][cygwin][screen] / [permlink]

パッケージはないのでソールから。
でも、./configure で
rm: cannot remove `conftest.exe': Permission denied
が、大量にでて、Makefile ができない…なんで? パーミッションは別におかしくないし…。でもシェル上から手動で rm も効かない。
Referrer (Inside): [2005-09-25-3]

screen パスワード
2004-11-26-2 / カテゴリ: [linux][command][screen] / [permlink]

コマンドライン上の
password [crypted_pw]
は、crypt で暗号化されたパスワード を設定
プレーンな文字列をセットすると、resumeできなくなるので注意
なので、まずは、引数無しで
password
を実行。パスワードを2回聞かれるので入力すると、cryptで暗号化された
パスワードが screen のコピーバッファに入る(バージョンによっては
この時点でパスワードが設定される?)ので、次は
password [screenバッファのpaste]
を実行

screen 画面分割
2004-11-26-1 / カテゴリ: [linux][command][screen] / [permlink]

C-a Shift-s で分割
C-a shift-q で解除
C-a C-i でフレーム(?)移動
移動した後、C-a n/p でバッファ(?)切り替える必要あるけど

screen のステータス行にいろいろ表示してみる
2004-10-01-1 / カテゴリ: [unix][linux][command][screen] / [permlink]

結局
hardstatus alwayslastline "%{= kw}%-w%{= rw}% %t%{= kw}%+w %=%H %c / %l"
になりました。
%H .. ホスト名
%l .. ロード
などなど

screen 使い方2
2004-06-16-1 / カテゴリ: [unix][linux][command][screen] / [permlink]

C-a C-c 新規ウインドウの生成・ウインドウ切り替え
C-a (num:0~9) ウインドウの切り替え
C-a C-n 次のウインドウに切り替え(C-a n / C-a SPC でもOK)
C-a C-p 前のウインドウに切り替え(C-a p / C-a h / C-a BS でもOK)
C-a N 現在のウインドウ番号の表示
C-a C-w ウインドウリストの表示
C-a C-k 現在のウインドウを破棄(C-a k でもOK)
C-a ? キーアサインの表示

screen 設定
2004-06-08-2 / カテゴリ: [unix][linux][command][screen] / [permlink]

.screenrc
escape ^t^t
defhstatus "screen [^En:^Et] <${USER}@${HOST}:${PWD}>"
hardstatus string "screen@%H[%n] %h"
vbell off
これで、コマンドキーが C-t に。

screen 使い方基本
2004-06-08-1 / カテゴリ: [unix][linux][command][screen] / [permlink]

起動
$ screen

detached(screenを残して落ちる)
C-a d

resume(セッションの再開)
$ screen -r

既に起動・セッション中のscreenを横取り(先方はdetached)
$ screen -d -r

既に起動・セッション中のscreenを横取り(先方はdetached&ログアウト)
$ screen -D -r

既に起動・セッション中のscreenを共有
$ screen -x

screen インストール(Solaris)
2004-05-12-1 / カテゴリ: [unix][Solaris][command][screen] / [permlink]

src: ftp://ftp.uni-erlangen.de/pub/utilities/screen/
解説: http://www.kawaz.jp/pukiwiki/?screen など
./configure --prefix=/export/home/miyazaki/local/screen-4.0.2
カテゴリ: screen