OS-COMMAND
执行 OS 命令。
没有任何选项的操作系统命令将启动一个新的 shell 而不退出它 - 因此你将在图形操作系统上:es 将窗口挂起。
DEFINE VARIABLE cmd AS CHARACTER NO-UNDO.
cmd = "dir".
OS-COMMAND VALUE(cmd).
有三种选择:SILENT
,NO-WAIT
和 NO-CONSOLE
。
无声
处理完操作系统命令后,AVM shell 暂停。要在 Windows GUI 平台中退出窗口,必须键入 exit。要在 Windows 角色平台中退出窗口,必须键入 exit 并按 RETURN 或空格键。你可以使用 SILENT 选项消除此暂停。仅当你确定程序,命令或批处理文件未向屏幕生成任何输出时,才使用此选项。不能与 NO-WAIT 一起使用。
OS-COMMAND SILENT VALUE("runprogram.exe").
NO-WAIT
在多任务环境中,使 AVM 在 OS-COMMAND 之后立即将控制权传递回下一个语句,而不等待操作系统命令终止。不能与 SILENT 一起使用。仅在 Windows 中支持此选项。
OS-COMMAND NO-WAIT VALUE("DIR > dirfile.txt").
在 Linux / Unix 上,你必须通过在命令之前使用 &
-sign 来实现此目的:
OS-COMMAND VALUE("ls >> file.txt &").
NO-CONSOLE
在处理操作系统命令时,AVM 会创建一个控制台窗口。执行命令后,可能无法清除控制台窗口。你可以使用 NO-CONSOLE 选项来防止首先创建此窗口。
OS-COMMAND NO-CONSOLE VALUE("startbach.bat").
没有错误从 OS-COMMAND
返回到 Progress ABL,因此你必须以另一种方式检查错误,可能将它们写入 shell 脚本或类似文件中。