这段代码究竟在做什么?

时间:2013-11-14 14:34:18

标签: shell unix

有人能告诉我这段代码在做什么吗?

            usage()
            {
                 echo "Usage: $0 -p ";
                 echo " p - process id ";
                 exit 1;
            }

我是一名unix新手,所以只是试图将示例脚本拼凑起来以便掌握。

2 个答案:

答案 0 :(得分:2)

这是一个名为usage()的shell函数。它报告了程序(脚本)应该如何使用和退出。

显然,您应该输入:

$ script -1234

处理进程1234.如果您误用了脚本,它将用脚本名称替换$0

Usage: script -p
 p - process id

应该报告使用标准错误:

echo "Usage: $0 -p" >&2
echo " p - process id" >&2

分号是多余的。

答案 1 :(得分:1)

usage是一个功能。调用时,它会打印:

Usage: $0 -p
p - process id

其中$0设置为文件名。

最后退出。

这是为向用户显示如何使用特定命令而创建的典型函数。只要参数数量不正确/给出的参数不正确,就会调用它。

在这种特定情况下,它解释了必须使用-p参数执行脚本。