我有一个用于项目的大型代码存储库,我正在尝试通过emacs TAGS对其进行搜索。因此,我进入主目录,并尝试使用此命令来生成标签:
find . -name *.[chsS] | xargs etags -
但是我得到的答复是“找到:没有匹配项。”
[当我自己单独键入“ find”命令时,它将列出所有代码文件和子目录,以及我希望标记的更多代码文件。
我该如何进行这项工作?为了明确起见,我希望能够使用emacs M-。和M- *来浏览大型存储库中的代码标签。
非常感谢。
根据您的说法,我称其为shannanigans:
find . -name *.[chsS]
在这里,您的交互式shell将把“ *。[chsS]”扩展为文件列表,第一个将被接受为“ name”参数。但是find会尝试将第二个文件解释为一个选项,并且它将无效。
这里的课程是引用传递的通配符,以查找单引号,双引号或反斜杠。
对于使用ctags工具的C和头文件,
find . -name \*.[ch] | xargs ctags
此命令将包括扩展名为.c
和.h
的源文件>
如果使用在https://ctags.io开发的ctags,则>
ctags --languages=C,Asm --kinds-C=+p -e -R