Linux 系统上使用 IDL 的基础信息
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 - 显示当前目录位置