bashスクリプトとfishスクリプトは互換性がありませんが、bashとfishの両方によって初期化されるいくつかの環境変数を定義するファイルが欲しいです。
私の提案する解決策は、次の~/.env
ような環境変数のリストを含むファイルを定義することです。
PATH="$HOME/bin:$PATH"
FOO="bar"
次に、bashでソースを作成し、それをfish形式に変換するスクリプトを作成し、fishのソースを作成します。
私はこれよりも良い解決策があるかもしれないと考えていたので、bash fish間で環境変数を共有するより良い方法を求めています。
注:OS Xを使用しています。
以下は、.env
fishとbashの両方をとんでもない魚の構文を使って処理したいファイルの例です(〜/ binと〜/ bin2は空のディレクトリであると仮定します):
setenv _PATH "$PATH"
setenv PATH "$HOME/bin"
setenv PATH "$PATH:$HOME/bin2"
setenv PATH "$PATH:$_PATH"
PATH
魚の修正は、スペースのあるパスで動作しますか?改行?他に注意すべきことは?