所有没有扩展名的文件的shellcheck vscode“shellcheck.ignorePatterns”

Posted

技术标签:

【中文标题】所有没有扩展名的文件的shellcheck vscode“shellcheck.ignorePatterns”【英文标题】:shellcheck vscode "shellcheck.ignorePatterns" for all files with no extension 【发布时间】:2021-07-01 15:03:34 【问题描述】:

我正在使用 shellcheck vscode 扩展,我希望 shellcheck 忽略 任何地方 没有 具有文件扩展名的文件。我尝试了许多不同的 glob 模式,但没有任何效果。

我得到的最接近的是:

  "shellcheck.ignorePatterns": 
      "*[!(.)]/**": true
  

但它真的不是很接近。

有人知道魔法酱吗?

【问题讨论】:

我在网上搜索像 glob file no extension 这样的术语,结果看起来不太乐观。如果你有一个像"*": true 这样的第一个条目,然后是"*.*": false,该怎么办? @noah 感谢您的意见。唉"*": true,后跟"*.*": false 不起作用。我找到了一个不错的解决方案,它采用相反的方法(包括在内)并且不使用 glob。 【参考方案1】:

似乎无法对无扩展名的文件进行通配。

我最终没有使用 vscode shellcheck 扩展,而是在命令行上使用了包含 shellcheck 的包容性方法,将要包含的内容的任务卸载到 find

我所有需要检查的脚本都是 .sh 文件,所以这有效:

find . -type d \( -name node_modules -o -name vendor -o -path /tmp \) -prune -false -o -name '*.sh' -exec shellcheck  \;

我本来希望在 vscode 中保留 bash linting,但由于 glob/vscode 的限制,我不得不接受上述解决方案。

【讨论】:

以上是关于所有没有扩展名的文件的shellcheck vscode“shellcheck.ignorePatterns”的主要内容,如果未能解决你的问题,请参考以下文章

openBinaryFile:使用 shellcheck 时不存在(没有这样的文件或目录)

VSC我安装了哪些扩展工具

GNU Parallel 与多个文件的 shellcheck

当源文件表示脚本顶部的变量时,为啥 shellcheck 会失败?

VSC - VS Code 插件

Centos安装shellcheck的方法