新しい端末作業ディレクトリ

新しい端末作業ディレクトリ

別のホストにログイン(使用ssh)して新しいタブを開くとき(CTRL+ Shift+を押すT)。リモートホストの現在の作業ディレクトリに関係なく、現在の作業ディレクトリを自宅の特定のディレクトリに設定します。

  • それでは、この行動の原因は何ですか?
  • どのように変更できますか?

私はRed Hatを使用しています。

ベストアンサー1

Ctrl+をShift押すと、Gnome TTerminalはこのタブで実行されているプロセスの現在のディレクトリを表示し、そのディレクトリに切り替えて新しいタブでプロセスを実行します。

bashすでにシェルを実行していて、そのbashインスタンスにあるGnomeターミナルタブを入力している場合は、/directory1++を押すと、シェルがある新しいタブが起動します。 Gnome端末は、子プロセスではなく、子プロセスの現在のディレクトリのみを調べます。 (これが実際に唯一合理的な方法です。どの子孫を選択するのかどうかを決定しますか?)cd /directory2CtrlShiftT/directory1

Gnomeターミナルは、他のシステムで開いているシェルを実行するときに常に実行する操作を実行しますssh。新しいタブを開くと、コマンドを実行したシェルのディレクトリからタブが起動しますssh

Gnome-terminalには、他のシステムの現在のディレクトリを知る方法はありません。これには、SSHとリモートシェルとの緊密な統合が必要です。私はそれが不可能だと言うものではありません - Emacs徒歩旅行者リモートシェルでプロンプトを解析してリモートディレクトリを見つけます。しかし、複雑さ、信頼性、柔軟性が低下する。 Gnome-terminalは、目的のタスクを実行できる端末を提供します。 TRAMPはSSH接続を制御し、リモートシェルのランダムな動作を処理しません。

重要な開発作業を行わないと変更できません。 Emacsをターミナルエミュレータとして使用できます(もちろんEmacsはGnomeターミナルを直接置き換えるのとは離れているので、他の習慣を増やす必要があります)。リモートコンピュータでやるべきことがプログラムを実行するのではなく、ファイルを操作するだけであれば、ファイルを次の場所にマウントできます。SSHFSその後、ローカルシェルを実行すると、目的の現在のディレクトリトレースを取得できます。ただし、同じリモートディレクトリに新しいタブを作成する最も簡単な方法は、新しいタブを作成して同じコマンドをssh実行してからリモートパスをコピーして貼り付けることです。

おすすめ記事