Почему я должен напечатать source env.sh, прежде чем я смогу использовать программное обеспечение для геофизической обработки под названием Madagascar? - PullRequest
0 голосов
/ 09 июня 2019

Я недавно установил программное обеспечение для геофизической обработки под названием Madagascar в Ubuntu 1904. Установка программы прошла гладко, и у меня не возникло никаких проблем.Проблема в том, что для того, чтобы использовать любую программу Мадагаскара, мне нужно быть в каталоге Мадагаскара.И прежде чем что-либо нужно набрать source env.sh, чтобы включить переменные среды для Мадагаскара.Я попытался добавить следующую строку как в .bashrc, так и в .profile, но все же мне нужно быть директорией Мадагаскара и прежде чем что-либо еще нужно набрать source env.sh для запуска программ.

shah@vbox:~$ echo 'export PATH=$PATH:/home/shah/madagascar-2.0/env.sh' >> ~/.bashrc

shah@vbox:~$ echo 'export PATH=$PATH:/home/shah/madagascar-2.0/env.sh' >> ~/.profile

shah@vbox:~$ source env.sh 

bash: env.sh: No such file or directory

shah@vbox:~$ sfpen

sfpen: command not found 

shah@vbox:~$ cd madagascar-2.0/ 

shah@vbox:~/madagascar-2.0$ source env.sh

shah@vbox:~/madagascar-2.0$ sfpen

NAME

 sfoglpen

DESCRIPTION

vplot filter for OpenGL.

SYNOPSIS

 sfoglpen colormask= red= green= blue= aspect= ppi= stretchy=n aalias=n   aawidth=1 mono=n endpause= cachepipe= shade= wantras= window= frame= overlay= invras= txsquare= serifs= background= redpow=1.0 greenpow=1.0 bluepow=1.0 dither= greyc=1.0 pixc=1.0 txfont= txprec= txovly= xcenter= ycenter= patternmult=1. pause=0 fatmult= rotate=0 txscale=1.0 mkscale=1.0 dashscale=1.0 scale=1.0 xscale=1.0 yscale=1.0 xshift=0. yshift=0. xwmax= ywmax= xwmin= ywmin= fat=0 bgcolor= erase= break= interact= style= size=

Может кто-нибудь помочь мне, как правильно добавить путь к этой программе, чтобы я мог использовать Мадагаскар из любого каталога.Привет

1 Ответ

1 голос
/ 09 июня 2019

Вы должны удалить сделанные вами изменения (они как лишние, так и ошибочные) и вместо этого просто добавить

source $HOME/madagascar-2.0/env.sh

в конец одного из интерактивных файлов запуска вашей оболочки.Какой из них зависит от того, как именно настроен ваш Bash, но если у вас есть .bash_profile, попробуйте это, или, может быть, .bashrc.

Более подробно Bash считывает различные файлы запуска в зависимости от того,shell - это оболочка для входа в систему и / или интерактивная оболочка.В идеале это должно быть сделано в интерактивной оболочке входа в систему - войдите в систему, потому что вы хотите сделать это только один раз (подоболочки могли бы унаследовать эти настройки) и интерактивно, потому что вы хотите и должны запускать это только в интерактивном сеансе.Но опять же, что именно будет работать, будет также зависеть от того, что именно содержит env.sh.

Ваш PATH не должен содержать env.sh, поскольку он должен содержать каталоги, а не имена файлов;и предположительно env.sh позаботится о фактическом обновлении PATH.Конфигурация вашей оболочки почти наверняка уже содержит export PATH, поэтому нет необходимости делать это снова (несколько раз!).

...