Fish-shell не распознает .bashrc экспорта

Мне пришлось установить пару программ для моего университета на Ubuntu, те, которые требовали дополнительных строк в .bashrc это следующие строки

if [ -d /opt/pic32mx/bin ] ; then
 export PATH=$PATH:/opt/pic32mx/bin
fi 

export CLASSPATH=".:/usr/local/lib/antlr-4.9.2-complete.jar:/usr/local/lib/ST-4.3.1.jar:"
export ANTLR4_PATH="/usr/local/lib"

Похоже, что fish-shell не распознает эти экспорты и поэтому не будет выполнять команды, я должен пойти на свой bash, если я хочу его запустить. Есть ли простое решение, чтобы рыба распознавала команды и работала так же хорошо, как и мой bash?

0
задан 27 March 2021 в 01:38

1 ответ

Рыба использует Команда для настройки переменных.

Также недавно добавленные команда fish_add_path работает для добавления каталогов на путь. Если у вас есть старая версия рыбы, используйте каталог Fish_user_Paths , как описано в руководстве .

Обратите внимание, что рыба делает интересные вещи с переменными , которые заканчиваются * Путь - предполагается, что другие процессы хотят, чтобы уполномоченный толстой кишкой списка каталогов, так что это то, что обеспечивает:

$ set -gx FOO_PATH foo bar baz

$ set --show FOO_PATH
$FOO_PATH: set in global scope, exported, a path variable with 3 elements
$FOO_PATH[1]: |foo|
$FOO_PATH[2]: |bar|
$FOO_PATH[3]: |baz|

$ bash -c 'declare -p FOO_PATH'
declare -x FOO_PATH="foo:bar:baz"

Чтобы перевести команды Bash в Fish Commands и храните их в вашем ~ / .Config / fish / config.fish файл:

if [ -d /opt/pic32mx/bin ] 
  set fish_user_paths $fish_user_paths /opt/pic32mx/bin
end 

set -gx CLASSPATH   . /usr/local/lib/antlr-4.9.2-complete.jar /usr/local/lib/ST-4.3.1.jar ""
set -gx ANTLR4_PATH /usr/local/lib
1
ответ дан 2 April 2021 в 05:23

Другие вопросы по тегам:

Похожие вопросы: