列出目录中所有头文件(.h文件)所需的脚本/命令(递归)

AMM*_*AMM 3 unix search grep ls list

给定一个基目录我想以递归方式列出它下面所有目录下的所有头文件/*

如果可能的话,我希望输出类似于:

headerfile:  <path 1>
             <path 2>
             ...
headerfile2: <path a>
             <path b> etc
Run Code Online (Sandbox Code Playgroud)

什么是最好的方式.我尝试使用ls -R和grep,但我对脚本编写起来相当新.

pyr*_*ope 5

find . -name "*.h"
Run Code Online (Sandbox Code Playgroud)

仅适用于当前目录及以下的路径.如果你可以忍受重复文件名,并假设我理解你想要的输出,这是更复杂的版本......

find . -name "*.h" | while read i; do echo $(basename "$i") "$i"; done | sort
Run Code Online (Sandbox Code Playgroud)