GNU Screenは10.5.8で私のPATHを継承しません
端末のニーズに合わせて日常的に画面を使用していますが、とても満足しています。最近では、しかし、私は私のbashの設定ファイルにいくつかの更新をしたと私は、さまざまな設定をしていることに気づいPATH(要素をPATH、MANPATH、INFOPATH2ヶ所で、など)。私はファイルを本来あるべき姿に変更し、今ではすべての環境変数が一度に設定され.bash_profileます。ここに私の問題があります。 どうやら、私が2か所に設置したのは画面のせいでした。screenは実行するだけのように見え、元のbashシェルから自分や他の環境変数を正しく継承しているようには見え.bashrcませんPATH。これは実行するだけで.bashrc、変数を設定する.bash_profileだけなので、不完全なを取得しPATHます。 私の質問は、環境変数を重複せずに画面に表示する方法です。Bashドキュメントを読むと、画面がログインに使用するシェルの種類、つまり非ログインインタラクティブシェルである可能性があることが示されているようですが、画面に特定の種類のシェルを強制的に使用する方法を理解できませんでした。を介して使用するシェル-s /bin/bash。 私のGitHubページで私の設定ファイルを熟読できます。 これは画面を壊したコミットコミットです。 編集:私は使用Screen version 4.00.03 (FAU) 23-Oct-06していて、それを呼び出す傾向がありますscreen -h 50000 編集: Cygwin(CYGWIN_NT-5.1 1.7.1(0.218/5/3) i686、Screen version 4.00.03 (FAU) 23-Oct-06)でこれをテストできるようになりました。Macとは異なる動作を示します。 私が今発見した特定の動作は、Cygwin PATHで.bash_profileに加えた変更が画面に入ったときに複製され、画面ウィンドウを連続して作成してもパスは複製されず、.bash_profileが再ソースされることです。 私が話している動作を説明するために: 新しいターミナルからの出力: ... PATH: /home/tvishe01/bin/emacs/bin:/home/tvishe01/bin:/usr/local/bin:/usr/bin:/bin:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32/Wbem:/cygdrive/c/Program Files/ATI Technologies/ATI.ACE/Core-Static:/groovy-1.6.1/bin:/usr/lib/lapack MANPATH: /home/tvishe01/share/man:/usr/local/man:/usr/share/man:/usr/man::/usr/ssl/man Aliases: alias ..='cd ..' alias ...='cd ../..' ... [~]$ 画面の最初の呼び出しからの出力: [~]$ screen -h 50000 -s -/bin/bash ... PATH: …