10週間ウェブ開発講座

「GNU Screen & zsh」講座

「GNU Screen」と「zsh」について説明します。
デモ中心に進めます。

前提

s-tanno.com にログイン後、次の操作を実行してください*1

cd
cp ~y-mahata/.zshrc .
cp ~y-mahata/.screenrc .
cp ~y-mahata/.inputrc .

また、「GNU Screen」と「zsh」の機能を最大限に活用するには、CtrlキーがQWERTY配列キーボードでの「a」の左隣にあることが望ましいです。
日本語キーボードを利用されている場合は、窓使いの憂鬱や、altimeなどのツールを使い、CapsLock?キーをCtrlキーに置換することをお勧めします。

なお、窓使いの憂鬱でCtrlキーを置換するためには、次のような設定を行います。

include "109.mayu"

#CtrlとCapsLockを交換
mod control += 英数
key *英数    = *LControl
mod control  -= LControl
key *LControl = *英数

# C-\ を半角/全角に
key C-YenSign = 半角/全角

# C-h をBackSpaceに
key C-h = BackSpace

# C-m をEnterに
key C-m = Enter

# \ -> $
key BackSlash = $DOLLAR_SIGN

この設定では、さらに「Ctrl-h」をバックスペースに、「Ctrl-m」をエンターに置換しています。

インストール

s-tanno.com には既に「GNU Screen」と「zsh」がインストールされています。
個別環境でのインストール方法については割愛します。

zsh

zshについて説明します。

zshを起動する

  • /usr/local/bin/zsh

ログインシェルをzshに変更する

ログインシェルとは、ログイン時に起動するシェルのことです。

  • chsh
  • (パスワード入力)
  • /usr/local/bin/zsh

コマンド履歴を辿る

  • Ctrl-p : 一つ前のコマンドを参照する
  • Ctrl-n : 一つ後のコマンドを参照する

コマンド履歴を検索する

  • Ctrl-r[xxx] : コマンド履歴から検索する

ディレクトリパスを展開する

  • (例) cd /u/lo/b [tab] : /usr/local/bin に展開される

実行可能ファイルを選択する

# (/usr/local/bin)などに移動した後で

  • l [tab] : lで始まる実行可能ファイルが列挙される

この状態で、emacsキーバインドにてファイルを選択できます。
emacsキーバインドには次のようなものがあります。

  • Ctrl-f : 右へ移動
  • Ctrl-b : 左へ移動
  • Ctrl-p : 上へ移動
  • Ctrl-n : 下へ移動
  • Ctrl-a : 行頭へ移動
  • Ctrl-e : 行末へ移動

パイプ付のaliasを使用する

  • ps aux | grep y-mahata

と等価なコマンドを次のように書けます。

  • ps aux G y-mahata

configureオプションを列挙する

  • ./configure[tab]

ディレクトリを移動する

  • cd -[tab]

ファイルグロブを展開する

ほんの一例です。

  • rm /tmp/*.html[tab]

"**/*"を使う

"**/*"は、"*/*/*/*/.../*"に該当する表記です。

  • grep foobar_func **/*
  • rm -i **/*.html

GNU Screen

GNU Screenについて説明します。

GNU Screenセッションを新しく作成する

  • screen -U

ウィンドウを作成する

  • Ctrl-t c

一つ先のウィンドウに移動する

  • Ctrl-t n

一つ前のウィンドウに移動する

  • Ctrl-t p

N番目のウィンドウに移動する

Nは自然数であると仮定します。

  • Ctrl-t N

ウィンドウを分割する

  • Ctrl-t x 2

分割したウィンドウを移動する

  • Ctrl-t x o

分割したウィンドウを削除する

  • Ctrl-t x 0

直前に使用していたGNU Screenセッションにアタッチする

  • screen -U -x

本質的に重要なオプションは「-x」です。
「-U」はUTF-8であることを明示するオプションです。
s-tanno.com では併せて指定する方が望ましいです。

GNU Screenセッションをデタッチする

  • Ctrl-t z

GNU Screenセッションの一覧を表示する

  • screen list

GNU Screenの特定のセッションにアタッチする

  • screen -r xxx

参考資料


*1 もしもs-tanno.comにログインできない場合、添付のdotfiles.zipを利用してください。

添付ファイル: filedotfiles.zip 92件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-05-28 (木) 17:40:30 (465d)