Rexx - Lệnh hệ thống

Một trong những ưu điểm lớn nhất của Rexx là khả năng tạo các tập lệnh có thể tái sử dụng. Thông thường trong các tổ chức ngày nay, việc có các tập lệnh có thể sử dụng lại là một giá trị bổ sung lớn trong việc tiết kiệm thời gian để thực hiện các công việc lặp đi lặp lại phổ biến.

Ví dụ, các nhóm công nghệ trong một tổ chức CNTT có thể cần phải có các tập lệnh để thực hiện các công việc thông thường hàng ngày. Các tác vụ này có thể bao gồm tương tác với hệ điều hành. Sau đó, các tập lệnh này có thể được lập trình để xử lý các mã trả về xấu hoặc lỗi.

Rexx cung cấp rất nhiều lệnh hệ thống có thể được sử dụng để thực hiện các tác vụ lặp đi lặp lại như vậy. Hãy xem xét một số lệnh hệ thống có sẵn trong Rexx.

dir

Đây là lệnh liệt kê thư mục thông thường được sử dụng trong Windows.

Cú pháp

dir

Thông số

không ai

Giá trị trả lại

Phương thức này trả về danh sách thư mục hiện tại trên hệ thống.

Thí dụ

/* Main program */ 
dir

Đầu ra phụ thuộc vào thư mục trong hệ thống.

Chương trình sau đây chỉ là một ví dụ.

Đầu ra

Volume in drive D is LENOVO 
Volume Serial Number is BAC9-9E3F  
Directory of D:\ 
04/06/2016  12:52 AM           268,205 100008676689.pdf 
10/20/2015  08:51 PM    <DIR>          data 
06/01/2016  10:23 AM                31 Example.txt 
10/28/2014  06:55 PM    <DIR>          Intel 
06/02/2016  11:15 AM                23 main.rexx 
12/22/2014  08:49 AM    <DIR>          PerfLogs  
12/13/2015  11:45 PM    <DIR>          Program Files 
12/24/2015  10:26 AM    <DIR>          Program Files (x86) 
07/17/2015  01:21 AM    <DIR>          Users 
12/23/2015  10:01 AM    <DIR>          Windows 
               3 File(s)        268,259 bytes 
               7 Dir(s)     202,567,680 bytes free

Một ví dụ khác về dir commandđược hiển thị trong chương trình sau đây. Chỉ lần này, chúng tôi đang sử dụngspecial rc variable. Biến này là đặc biệt trong Rexx và cung cấp cho bạn trạng thái thực thi các lệnh hệ thống. Nếu giá trị trả về là 0, thì điều đó có nghĩa là lệnh được thực hiện thành công. Nếu không, số lỗi sẽ được đưa ra trong tên biến rc.

Thí dụ

/* Main program */ 
dir 
if rc = 0 then 
   say 'The command executed successfully' 
else 
   say 'The command failed, The error code is =' rc

Khi chạy chương trình trên, chúng ta sẽ nhận được kết quả như sau.

Đầu ra

The command failed, The error code is = 127

Lệnh chuyển hướng

Rexx cũng có khả năng sử dụng các lệnh chuyển hướng. Các lệnh chuyển hướng sau có sẵn trong Rexx.

  • < - Lệnh này được sử dụng để nhận đầu vào đến từ một tệp.

  • >- Lệnh này dùng để xuất nội dung ra tệp. Nếu tệp tồn tại, nó sẽ bị ghi đè.

  • >>- Điều này cũng được sử dụng để xuất nội dung ra tệp. Nhưng đầu ra được thêm vào cuối tệp để bảo toàn nội dung hiện có của tệp.

Hãy xem một ví dụ về cách chúng ta có thể sử dụng các lệnh chuyển hướng. Trong ví dụ sau, chúng tôi đang sử dụng lệnh sắp xếp để sắp xếp một tệp có tênsortin.txt. Dữ liệu từ tệp được gửi đến lệnh sắp xếp. Kết quả của lệnh sắp xếp sau đó được gửi đến tệp sortout.txt.

Thí dụ

/* Main program */ 
'sort <sortin.txt> sortout.txt'

Giả sử rằng tệp sortin.txt có dữ liệu sau.

Đầu ra

b 
c 
a

Tập tin sortout.txt sau đó sẽ có dữ liệu sau.

a 
b 
c

Chức năng ĐỊA CHỈ

Phương pháp này được sử dụng để tìm ra môi trường mặc định được sử dụng cho các luồng Đầu vào, Lỗi và Đầu ra.

Cú pháp

ADDRESS(options)

Thông số

  • Các tùy chọn cho địa chỉ của một hệ thống cụ thể là gì.

Giá trị trả lại

Phương thức này trả về tên của môi trường cho các luồng Đầu vào, Lỗi và Đầu ra.

Thí dụ

/* Main program */ 
say ADDRESS('I') 
say ADDRESS('O') 
say ADDRESS('E')

Khi chạy chương trình trên, chúng ta sẽ nhận được kết quả như sau.

Đầu ra

INPUT NORMAL 
REPLACE NORMAL 
REPLACE NORMAL