8

有一些文件夹包含空间,因此无法使用 cscope 对这些文件夹进行索引。

我可以请你帮忙解决这个问题,或任何建议。

谢谢朱利叶斯


感谢您的回复。

我使用 cscope 的步骤如下

  • 寻找 。-name '*.scala'>cscope.files
  • cscope -b
    在这一步。我看到消息表明找不到文件:
    cscope:找不到文件/work/project/copy
    cscope:找不到cscope的文件
    :找不到文件fp/src/main/jav....
    实际上fp的副本是一个folder.so 我认为 cscope 无法识别包含空间的文件夹。

当我尝试将 vim 与 cscope 一起使用时遇到了这个问题。也许我需要将此问题移至其他标签。

4

4 回答 4

7

您至少可以简单地使用 GNU find 来完成,您可以使用-printfor-fprintf选项:

find . -type f -fprintf cscope.files '"%p"\n'
于 2014-05-14T17:53:21.890 回答
4

pydave 的回答很慢。这种方式需要 0.10 秒,而 pydave 的回答需要 14 秒:

find . -name "*.scala" | awk '{print "\""$0"\""}' > cscope.files
于 2014-04-14T22:02:47.033 回答
2

您可以使用 find 的 -exec 强制在输出周围加上引号:

find . -name "*.scala" -exec echo \"{}\" \; > cscope.files

如果您从脚本中执行此操作,您可能需要搞乱引用/转义。

于 2011-08-31T17:25:57.387 回答
0

双引号文件名在 cygwin 中有效,而用反斜杠转义则无效。

$ find $PWD -name "*.scala" | sed -e 's/^/"/g' -e 's/$/"/g' > cscope.files
于 2014-03-04T15:08:25.117 回答