LoginSignup
8

More than 5 years have passed since last update.

tmuxの練習問題

Last updated at Posted at 2018-05-20

目的

  • tmuxの操作に慣れるため、よく使いそうな操作を学ぶ
  • 手グセで操作できるようになりたい、一式の操作を打ち込めるサーキットトレーニングコースを作る
  • 練習で打つコースは、今後知っておいたほうがいい操作が出てきたら追加していく、実務の中であんまり使わないな、と思ったものと入れ替えていく

環境

  • ubuntu
  • iterm2
  • vagrant

操作(設定ファイル周り)

  • 設定ファイルをいじる

    • ~/.tmux.conf を作成し、この中に記載する
  • ショートカットキーを割り当てる

    • bind -r (キー) (コマンド) -(オプション) (パラメータ)
    • -r オプションをつけると、連打した操作が可能
  • プレフィックスキーを変更する

    • set -g prefix C-y (プレフィックスキーをControl + y に変更する)
    • unbind C-b (C-bのプレフィックスキーを無効にする)
  • プレフィックスキーを何にすべきか。というのはやっぱり重要だが、使っている人によってバラバラのよう。

    screen/tmuxのコマンドプレフィックスキーは何がベストか?
    https://qiita.com/hnw/items/02113da3476f29df768b

  • 設定ファイルのリロード

    • C-b :
    • source-file ~/.tmux.conf
  • 設定ファイルのリロードを、プレフィックスrで適用する設定

    • bind r source-file ~/.tmux.conf
  • 再読み込み時にメッセージを表示する 

    • bind r source-file ~/.tmux.conf \; display "Reloaded!"
    • \; は、続けて処理を行う
  • キーバインドの確認
     tmux list-keys

  • プレフィックスキーをなしにする設定

bind -n S-left select-pane -L
bind -n S-down select-pane -D
bind -n S-up select-pane -U
bind -n S-right select-pane -R

操作

  • セッションを開始

    • tmux new -s セッション名
  • detouch

    • Control + b (プレフィックスキーと言う:C-bと書く)
    • d
    • atach
    • tmux a -t セッション名
    • tmux attach - プロジェクト名 (aはattachを略している)
  • セッションを作るだけ(アタッチしない)

    • tmux new -s セッション名 -d
  • セッション名を変更

    • C-b $
    • 新しい名前
  • 状態を確認する

    • tmux ls
  • セッションを削除する

    • tmux kill-session -t セッション名
  • セッションを全て削除する

    • tmux kill-server
  • プレフィックスキーでできるコマンドを確認する

    • C-b ?(プレフィックスキー後に?)
    • esc(キーで脱出)
  • ウインドウを増やす

    • C-b c
    • ウインドウの見方 [セッション名]0:bash 1:bash* (2つウインドウがある状態 アスタリスクは現在のウインドウ)
  • ウインドウ切り替え

    • C-b ウインドウ番号
    • C-b n (次のウインドウへ) C-b p (前のウインドウへ)
  • ウインドウ名の変更

    • C-b , (カンマ)
  • ウインドウを一覧から選択

    • C-b w
  • ウインドウを検索

    • C-b f
  • ウインドウを削除

    • C-b &
  • 画面を分割する

    • C-b " (たて)
    • C-b % (横)
  • 分割した画面を移動する

    • C-b o
  • 指定した 番号にジャンプする

    • C-b q (ペイン番号を表示) 表示されている間にその番号を入力
  • ペインを移動する

    • C-b { (前に移動させる)
    • C-b } (後ろに移動させる)
  • ペインを削除

    • C-b x
  • ペインをウインドウで開く

    • C-b !
  • ペインのサイズ変更

    • C-b :
    • resize-pane -U 5 (五行上げる)
  • コピー/貼り付け

    • C-b [
    • コピーしたい位置で スペース 選択したら Enter
    • C-b ]  (貼り付け)
    • コピーは、複数連続で行うことができ、バッファに保存される。バッファに保存されている内容を確認するには
    • C-b :
    • list-buffers
    • C-b = でリストから選択して貼り付けることができる

練習 tmux千本ノック

  • セッションを3つ作り、
  • 二つ目のセッションを開き
  • セッション名を10倍し
  • 一つ目のセッションを削除し
  • 全体のセッションを確認する
  • 3つウインドウを作り
  • 3つ目のウインドウを削除し、
  • 一つ目のウインドウに移動し
  • ウインドウ名を変更する
  • セッションをデタッチし、
  • Test3セッションにアタッチする
  • セッションTest4 Test5 Test6を作る
  • セッションをでタッチしTest5にアタッチする
  • セッション Test1 Test2を削除する
  • ウインドウ3つを作る
  • 3番目のウインドウに移動する
  • 2番目のウインドウに戻る
  • 縦にペインを分割する
  • 横にペインを分割する
  • ペイン0に移動し横に分割する
  • 次のペインに移動し、別ウインドウで開く
  • 戻り、2つ前のペインに移動する
  • 二つ後のペインに移動する
  • 最初の0以外のペインを削除する
tmux new -s Test1
C-b d
tmux new -s Test2
C-b d
tmux new -s Test3
C-b d
tmux a -t Test2
C-b $ Test20
tmux kill-session -t Test1
tmux ls
C-b c
C-b c
C-b c
C-b 2
C-b &
C-b w
C-b , test1
C-b d
tmux a -t Test3
tmux new -s Test4 -d
tmux new -s Test5 -d
tmux new -s Test6 -d
C-b d
tmux a -T Test5
tmux kill-session -t Test1
tmux kill-session -t Test3
C-b c
C-b c
C-b c
C-b n
C-b n
C-b n
C-b p
C-b "
C-b %
C-b q
C-b %
C-b !
C-b o
C-b o
C-b p
C-b p
C-b x
  • 毎日反復でやる
  • まずはコマンドをみてやる
  • 慣れてきたら、操作だけみてやる
  • 便利な操作を知ったら追加していく

参考

tmuxを使い始めたので基本的な機能の使い方とかを整理してみた
http://kanjuku-tomato.blogspot.jp/2014/02/tmux.html
- そもそもtmuxってどういう時にありがたいの?セッションとは?など

tmuxチートシート
https://qiita.com/nmrmsys/items/03f97f5eabec18a3a18b

tmuxのプレフィックスに疲れたらbind -nオプションを使おう
https://blog.monochromegane.com/blog/2013/12/12/tmux-no-prefix/

達人に学ぶ.tmux.confの基本設定
https://qiita.com/succi0303/items/cb396704493476373edf

screen/tmuxのコマンドプレフィックスキーは何がベストか?
https://qiita.com/hnw/items/02113da3476f29df768b

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8