Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于查找所有度量时间的函数的Shell脚本_Shell - Fatal编程技术网

用于查找所有度量时间的函数的Shell脚本

用于查找所有度量时间的函数的Shell脚本,shell,Shell,我不熟悉shell脚本。我正在尝试编写一个shell脚本,它将在shell和C中查找测量时间的命令和函数。 我想将结果分为三列—函数名称、man节号和函数的简短描述。 我发现我可以找到所有函数并以我想要的方式显示它们: man -k time 谁能给我一些指点吗?如何将结果仅限于那些在shell和C中测量时间的函数(而不是那些包含单词“time”的函数)?请在unix.stackexchange.com上查看此答案 如您所见,1是“用户命令”,这些命令在shell中运行—您的shell命令

我不熟悉shell脚本。我正在尝试编写一个shell脚本,它将在shell和C中查找测量时间的命令和函数。 我想将结果分为三列—函数名称、man节号和函数的简短描述。 我发现我可以找到所有函数并以我想要的方式显示它们:

man -k time

谁能给我一些指点吗?如何将结果仅限于那些在shell和C中测量时间的函数(而不是那些包含单词“time”的函数)?

请在unix.stackexchange.com上查看此答案

如您所见,1是“用户命令”,这些命令在shell中运行—您的shell命令 第2节和第3节是C系统调用或C库函数

如果您查看手册页部分,则有一个概要部分

这给出了可用函数的C语言摘要。通常有 在手册页的其余部分有更多信息,但解析出来的信息并不明显

因此,运行
man-k time | egrep'\([23]\)'
,您将获得第2节和第3节中的所有C手册页名称。将其导入awk或cut以获得第一个字段,然后将其输入man(没有k选项),这将给出每个字段的内容

像这样提取概要部分可能会很好

man time| sed -n '/SYNOPSIS/,/DESCRIPTION/p'
也许用egrep“([123])运行这个程序可能是一个更好的主意,仅仅获取C和shell的所有手册页的概要部分就可以提供一个好的报告


根据目标的不同,有一个“问题”是有一些具有特殊名称的C库手册页部分。这方面的一个例子是openssl库中的(3ssl)

为什么不能只使用
人工时间
人工-时间
人工
不会找到shell函数(但它会在某些系统上找到shell内置)。但是,确定您处理的是哪种类型的
时间
相关功能并不完全是一个自动过程。您为什么要尝试这样做?这是你的实际目标还是你在试图解决其他问题?