跳转至

Linux 系统上使用 IDL 的基础信息

原文链接: https://www.nv5geospatialsoftware.com/Learn/Blogs/Blog-Details/basic-information-about-using-idl-on-linux

27724 为本文评分:

3.8

Linux 系统上使用 IDL 的基础信息

Anonym 星期四, 八月 14, 2014

最近,一位用户联系我们,因为他们正在从 Windows 上的 IDL/ENVI 过渡到 Linux。该用户对 Windows 上的 IDL 非常熟悉,但从未在 Linux 上使用过,他们想知道我们是否有任何文章或文档可以帮助他们。为了帮助他们,我整理了以下信息列表,我认为这些信息可能对初次在 Linux 上使用 IDL 的用户有用:

0) 安装 IDL

如果系统上没有安装 IDL,你需要做的第一件事是从我们的网站下载 Linux 版本的 IDL,并按照安装说明进行安装。

http://www.exelisvis.com/MyAccount/Downloads/tabid/411/mv/vw2/id/6640/Default.aspx

目录路径 "/usr/local/exelis" 是安装 IDL 的典型/默认位置。IDL 的安装程序会询问你是否要设置符号链接。如果你回答"是",那么 IDL 环境将在你的系统上永久设置好。如果你回答"否",那么你每次启动 IDL 时都需要设置 IDL 环境。

1) 启动命令行 IDL

如果在执行 IDL 安装时设置了符号链接,你应该只需在终端中输入以下命令即可启动 IDL:

idl

但是,如果未设置这些链接,那么在启动 IDL 之前,你将需要设置 IDL 环境。为此,你需要根据你使用的 Shell 来 "source" 相应的文件:

BASH

$ source /usr/local/exelis/idl83/bin/idl_setup.bash $ idl

CSH/TSH

$ source /usr/local/exelis/idl83/bin/idl_setup $ idl

你可以通过输入以下命令来确定你正在使用的 Shell:

echo $SHELL

如果你成功启动了 IDL,它将显示一个 IDL 提示符,你可以在其中编译和执行你的 IDL 程序:

IDL Version 8.3 (linux x86_64 m64). (c) 2013, ExelisVisual Information Solutions, Inc. Installation number: -99999999999999 Licensed for use by: Exelis VIS IDL floating licenses

IDL>

如果你熟悉 IDL 执行命令,它们在这个环境下可能很有用:

http://exelisvis.com/docs/Executive_Commands.html

2) 启动 ENVI 和使用无界面系统

你可以使用以下命令从 IDL 启动 ENVI:

IDL> en=envi()

如果你使用的是无界面系统(没有 GUI、无法显示图像的系统),那么在启动 ENVI 时,你会希望使用 HEADLESS 关键字:

IDL> e=envi(/headless)

此外,如果你在无界面系统上,使用 IDL 生成直接图形时,请使用 Z-buffer:

http://exelisvis.com/docs/Supported_Devices.html#Z-Buffer

同样,在无界面系统上,使用(New)Graphic 时,请使用 BUFFER 关键字。例如:

p = plot(findgen(10), /buffer) p.save, "plot.png"

3) Linux 和 Windows 上 IDL 程序的差异

IDL 程序是多平台的。因此,在大多数情况下,你应该能够不加修改地运行在 Windows 上运行过的相同 IDL 程序。但是,IDL 在 Linux 和 Windows 上有一些细微的差别。

IDL 在 Linux 和 Windows 上的主要区别之一是,Windows 上的图形设备是 "WIN" 设备,而在 Linux 上是 "X" 设备。因此,如果你想使用直接图形显示某些内容,需要使用 "X" 设备而不是 "WIN" 设备:

http://exelisvis.com/docs/Supported_Devices.html#X

此外,如果你想更改图形首选项,则需要更改 X 图形首选项:

http://exelisvis.com/docs/prefs_gr_x.html

你可能需要考虑的另一个小变化是,在 Linux 上,目录使用 "/" 字符分隔,而不是 Windows 使用的 "\" 字符。

4) 编辑程序

如果你需要在 Linux 系统上编辑程序,那么有几种方法可以选择:

A) idlde

如果你使用的是带界面的系统,那么可以启动 IDL 开发环境,并以与在 Windows 上相同的方式使用它。你可以在终端中输入 "idlde" 而不是 "idl" 来启动它。

B) 使用其他文本编辑器

如果你无法使用 IDL 开发环境(例如,如果你在一个无界面的系统上),那么可以使用标准的 Linux 文本编辑器来编辑 IDL 程序。几个流行的编辑器是 EMACS 和 VI:

http://en.wikipedia.org/wiki/Emacs

http://en.wikipedia.org/wiki/Vi

5) 如何管理路径和首选项

管理路径和首选项的最佳方法是使用诸如 PREF_SET 和 PREF_GET 之类的 IDL 命令。以下帮助页面展示了一些如何操作的示例:

http://exelisvis.com/docs/PREF_SET.html

6) Linux 终端命令

如果你有使用 DOS 命令行的经验,你可能会发现 Linux 命令行环境相当熟悉。以下网站提供了 DOS 命令及其在 LINUX 中等效命令的列表:

http://www.yolinux.com/TUTORIALS/unix_for_dos_users.html

下面列出了一些我经常使用的命令:

cd - 更改目录位置 ls - 列出目录内容 mkdir - 创建新目录 more - 显示文件内容 pwd - 显示当前目录位置

什么是颠覆性技术? WorldView-3 和 ENVI 5.2 将是一个强大的组合