.screenrcで定義されたシェルでエイリアスを実行するには?

.screenrcで定義されたシェルでエイリアスを実行するには?

~/.bash_aliases に .screenrc で実行するエイリアス設定があります。

chdir ~/projects/profullstack/edcast/edc-web
screen -t SHELL 0 edc-web-local      
chdir ~/projects/profullstack/edcast/edc-cms
screen -t SHELL 1 edc-cms-local
chdir ~/projects/profullstack/edcast/edcast
screen -t SHELL 2 edcast-local
screen -t mysql 3 /home/linuxbrew/.linuxbrew/opt/[email protected]/bin/mysql.server start
screen -t elastic 4 /home/linuxbrew/.linuxbrew/opt/[email protected]/bin/elasticsearch

しかし、これらのエイリアスは見つかりません。

答え1

私はedc-web-local例の別名を仮定しています。動作させる唯一の方法は、bash -icコマンドの前に以下を追加することです。

screen -t SHELL 0 bash -ic edc-web-local

..他のエイリアスコマンドにも同じトリックが適用されます。

-c次の引数(オプションではない)が実行するコマンドであることを示します。-iシェルが「対話型」モードで実行されるように指示します。つまり、エイリアスチェックをオンにしてロードします~/.bashrc(通常は~/.bash_aliases)。

関連情報