执行指定的子例程调用。
syscall [ -n ] Name [ Argument1 ... ArgumentN ] [ ; Name [ Argument1 ... ArgumentN ] ] ...
syscall 命令执行系统调用接口程序,该程序执行 Name 参数指定的子例程调用。如果您指定了 -n 标志,那么 syscall 命令会执行调用 n 次。由 Argument 参数指定的变量不经过误差检测就传递到子例程。 Argument 参数可以通过下列格式表示:
syscall 命令对于 未知子例程和返回值为 -1 的子例程会打印出一条消息并且退出。
注:syscall 命令将 sleep 子例程理解为特例子例程。
-n | 指定 syscall 命令 执行指定的子例程的次数。 |
; | 分离 syscall 命令的同一调用发出的多个子例程(最多达 20 个)。 |
访问控制:必须具有 root 用户权限才能运行这个命令。
要模拟 C 程序段:
output=open("x", 401, 0755);
write(output, "hello", strlen("hello"));
输入:
syscall open x 401 0755 \; write \$0 hello \#hello
注:特殊 shell 字符必须转义。
/usr/bin/syscall | 包含 syscall 命令。 |
bsh 命令、Rsh 命令、csh 命令、ksh 命令以及 sh 命令。
《AIX 5L V5.2 系统用户指南:操作系统与设备》中的『Shell 概述』。