tcsh 和 bashrc 冲突

tcsh 和 bashrc 冲突

我是 Ubuntu 的新用户,在某些过程中遇到一个问题:

  • 有一款名为 TDEFNODE 的免费软件,使用 Fortran 编码,可在 Ubuntu 下运行。所以我刚刚在虚拟驱动器上安装了 Ubuntu 14。
  • 我的朋友编译了该程序,下载了“gfortran”和“tcsh”,并在.bashrc 中添加了一些语法,以向 shell 显示该程序位于某个文件夹中。
  • 该软件在终端上运行良好,并创建了大量结果文件。其中一些文件用于绘制某些形状和矢量。
  • 程序需要另一个名为 GMT 的程序,因此我从 Ubuntu 软件中心下载了它以及所有软件包。
  • 我遇到的真正问题是;一个名为“td_plot”的文件。这是软件文件夹中的另一个文件,它使用输出文件和 GMT 软件一起绘制某些类型的文件,例如 .ps。示例命令如下:

    td_plot -p map -m aaaa -obsv -calc
    

    这意味着:绘制一张地图,其结果位于“.aaaa”文件中。并在该地图上显示“观察”和“计算”向量。

  • 该命令生成文件,但文件包含的地图并不包括这些矢量。

  • 据我了解,这个 td_plot 文件包含“tcsh”下使用的命令,而错误绘制问题就是与此有关的。

  • 到目前为止我所做的所有过程都是在 bashrc 下进行的。

有什么想法可以正确运行这个 tcsh 文件吗?

谢谢。

答案1

据我目前了解,问题在于该脚本充满了来自“tcsh”shell 的命令。脚本以“#!/bin/tcsh -f”开头,这意味着使用 tcsh shell(已安装)运行该脚本。

但问题仍然存在,输出文件不正确并且缺少一些属性。

有没有办法将 shell 更改为 tcsh 并使用它运行该脚本?

答案2

最后,我终于搞清楚了如何使用这些软件。我不想让这个话题成为死胡同,所以我将简单解释一下安装过程。也许这会有所帮助:

  1. 安装和下一步过程似乎依赖于软件的版本。
  2. 我在 VMware 虚拟机(4 个 CPU、4 GB RAM)上安装了 Ubuntu 16.04。
  3. 安装 netcdf(libnetcdf-dev)和 gdal(libgdal1-dev)。
  4. 下载 GMT-4.5.14、GSHHG-GMT-2.3.4、GMT4param.txt 和 install_gmt4.sh
  5. 更改GMT4param.txt上的参数:GSHHG_ftp=n GSHHG_path=(安装路径)GMT_ftp=n GMT_prefix=(安装路径)GMT_delete=n
  6. 使用以下命令安装这些文件:sudo sh install_gmt4.sh GMT4param.txt
  7. 将 GMT 的 PATH 添加到您的 .bashrc 文件中。

这些步骤适用于 GMT。

对于 TDEFNODE:

  1. 下载并编译 TDEFNODE。
  2. 将所有文件放在一个目录中。
  3. 在 .bashrc 中指定 TDEFNODE 和 td_plot 的 PATH
  4. 安装 tcsh 包。

现在软件可以运行,并且与 GMT 兼容。到目前为止似乎没有错误。

答案3

(本次安装使用 ubuntu)

首先你应该使用以下方式下载 tdefnode此链接自述文件在这里)和其他一些应用程序

sudo apt install make
sudo apt install gcc
sudo apt install gfortan
sudo apt install gmt
sudo apt install make
sudo apt install tcsh (this one is optional I guess)

记住,无论在哪里你需要 .bashrc 都可以用它打开sudo nano ~/.bashrc,无论在哪里你想添加一些东西到 PATH 都可以用sudo export PATH=$PATH:/address to file/. 来查找文件地址pwd

然后将其解压到某个地方,例如/home/user/TDEFNODE/ ; 下载并按照上述步骤进行安装

有关 PATH 的更多信息,请阅读文章

然后下载 td_plot 并将这些行添加到 .bashrc:

export TD_HOME=/home/asdfgh/TDEFNODE
alias tdefnode='/home/asdfgh/TDEFNODE/tdefnode'
alias td_plot='/home/asdfgh/TDEFNODE/td_plot'


PATH=/usr/bin/gmt/:"${PATH}"
PATH=/etc/gmt/:"${PATH}"
PATH=/usr/lib/gmt/:"${PATH}"
PATH=/usr/bin/X11/gmt:"${PATH}"
PATH=/usr/share/gmt/:"${PATH}"
PATH=/usr/lib/gmt/bin/:"${PATH}"
PATH=/home/asdfgh/TDEFNODE/td_plot:"${PATH}"

正如这里提到的: https://ubuntuforums.org/showthread.php?t=2365967

正如我所尝试的,td_plot 和 tdefnode 应该可以正常工作。如果有任何其他问题,请在评论中提出,我希望能够帮助您。:)

相关内容