Rexx - 可移植性

可移植性是任何编程语言的一个重要方面。 众所周知,Rexx 可在 Windows 和 Linux 等多种操作系统中使用。 因此需要确保在Windows平台上开发程序时,如果相同的程序在Linux平台上运行,也采取了必要的预防措施。

Rexx 能够运行系统级命令。 有一些命令可用于了解它运行的操作系统是什么。 然后,它可以根据输出采取适当的操作来查看可以在此操作系统上运行的命令。

示例

以下示例显示如何使用解析函数来获取程序运行所在操作系统的详细信息。

/* 主程序 */
parse version language level date month year. 
parse source system invocation filename. 
language = translate(language) 

if pos('REGINA',language) = 0 then 
   say 'Error , the default interpreter is not Regina' language 
   say 'The Interpreter version/release date is:' date month year 
   say 'The Language level is: ' level say 'The Operating System is'  

   select 
when system = 'WIN32' then 
   'ver'
when system = 'UNIX' | system = 'LINUX' then 
   'uname -a' 
   otherwise 
   say 'Unknown System:' system 
end 
if rc <> 0 then 
   say 'Error :' rc 

输出将根据操作系统的不同而有所不同。 下面给出了示例输出。

The Interpreter version/release date: 5 Apr 2015 
The Language level is:  5.00 
The Operating System is 
Unknown System: WIN64 
Bad return code: RC