GNU/Linux >> Linux の 問題 >  >> Linux

gnome-terminal を使用して tmux を起動する

gnome-terminal で起動するように tmux を設定する方法は次のとおりです。 :

<オール>
  • gnome-terminal を起動
  • メニュー> 編集> プロファイル設定> タイトルとコマンド (タブ)
  • [自分のシェルの代わりにカスタム コマンドを実行する] にチェックを入れます
  • Populate カスタム コマンド tmux
  • これらの指示は、Ubuntu 11.04 で機能します。 Linux の任意のフレーバーの gnome-terminal で同等の機能が動作するはずです。


    .zshenv から何でも起動 間違いなく間違ったアプローチです。このファイルは zsh のすべてのインスタンスによって実行されます 、スクリプトを実行しているときでも。 .zshrc を使用 対話型シェルで実行する必要があるもの、および .profile (または .zprofile 、ログイン シェルとして zsh を設定している場合) は、ログイン時に実行する必要があります。

    すべての端末で tmux が必要な場合は、端末の直下で tmux を開始します (例:gnome-terminal -e tmux)。 (これらの引数を渡すように GUI ランチャーを変更してください)。 -e でも引数を渡すことができます (ただし、引用には注意してください)。 gnome-termminal -e 'tmux -s ~/.alternate.tmux.conf' .

    ssh 経由でログインするときに tmux も開始する場合は、~/.profile から起動する必要があります。 .これは、ログイン シェルの親プロセスが sshd の場合にのみ実行します。 :

    parent_process_name=$(ps -o comm= -p $PPID`)
    case ${parent_process_name##*/} in
      sshd) type tmux >/dev/null 2>/dev/null && exec tmux;;
    esac
    

    ssh 経由で tmux を開始する別の方法は、環境からセッション名を取得することです。そうすれば、既存のセッションにアタッチできます。最も簡単な方法は、サーバー側で小さなスクリプトを作成することです。 ~/bin/tmux-login-session :

    #!/bin/sh
    if tmux has-session -t "$1"; then
      exec tmux attach-session -t "$1"
    else
      . ~/.profile
      exec tmux new-session -s "$1"
    fi
    

    次に、次のような ssh コマンドを使用します:

    ssh -t hostname.example.com bin/tmux-login-session SESSION_NAME
    

    ターミナルで次のコマンドを実行して、tmux を取得します。 gnome-terminal を起動するたびに実行する :

    gconftool --type string --set /apps/gnome-terminal/profiles/Default/custom_command "tmux"
    gconftool --type bool --set /apps/gnome-terminal/profiles/Default/use_custom_command "true"
    

    これらの一連のコマンドにより、ターミナルの開始時に gnome-terminal が tmux を起動します。

    • これにより、tmux を終了すると gnome-terminal も終了します。
    • これは gnome-terminal 設定であるため、ssh やログインに干渉することはありません。
    • また、デスクトップにピン留めした gnome-terminal のすべてのショートカットを使用して、tmux を実行しているコマンドラインから起動できるため、この動作用のカスタム ショートカットを作成する必要はありません。

    Linux
    1. 5分でプロのようにTmuxを使い始める方法

    2. Notify-Send With Cronを使用していますか?

    3. Gnomeターミナルでのコピー貼り付け?

    1. Gitオートコンプリート?

    2. サーバーログの使用

    3. grep と awk の使用

    1. Linuxtmuxセッション内でのIrssiの使用

    2. IPブラックリストとしてUFWを使用する

    3. Apacheでmod_clusterを使用する