【问题标题】:Multiline comments in DockerfilesDockerfiles 中的多行注释
【发布时间】:2019-03-14 15:10:59
【问题描述】:

有没有快速注释掉 Dockerfile 中的多行的方法?

我知道我可以在每一行的开头添加#。但是如果有很多行,这工作量就太大了。在某些语言中存在多行 cmets,例如 /* ... */,这使得注释掉文件的大部分内容非常快。

【问题讨论】:

  • M-x comment-region 将在 Emacs 中工作; .,.+4s/^/# / 将注释掉 vi 中接下来的五行。
  • 任何现代 IDE 都允许您使用鼠标选择行并执行简单的控制 + / 来注释所有行
  • JetBrains IDE 的某些社区版本无法识别 Dockerfile。要仍然能够使用 control + / 快捷方式,请创建一个新的文件类型,将“行注释”设置为“#”并将您的 Dockerfile 与新创建的文件类型相关联。

标签: docker dockerfile


【解决方案1】:

截至今天,没有。

根据Dockerfile reference 文档:

Docker 将以 # 开头的行视为注释,除非该行是 一个有效的解析器指令。一行中任何其他位置的 # 标记是 被视为一个论点。:

没有关于如何注释行的更多细节。

正如一些 cmets 已经说过的,大多数 IDE 将允许您轻松执行多行 cmets(例如 IntelliJ 上的CTRL + /

【讨论】:

  • CTRL + / 适用于 VScode 单或多。
【解决方案2】:

Docker documentation 中没有提到多行 cmets

为简单起见,我还将相关部分粘贴在这里:

Docker 将以 # 开头的行视为注释,除非该行是 一个有效的解析器指令。
行中任何其他位置的 # 标记都被视为参数。
这允许像这样的语句:

# Comment  
RUN echo 'we are running some # of cool things'  

cmets 不支持换行符。

另一方面,您可以使用任何现代 IDE/文本编辑器轻松实现所需的结果。

这是一个使用 Sublime Text 的示例(选择文本,然后控制 + /)。

您可以使用VsCodeNotepad++JetBrains 产品(IntelliJ、PyCharm、PHPStorm 等)以及我知道和使用的几乎 100% 的 IDE/文本编辑器实现相同的结果。

【讨论】:

  • 视觉效果 A+
猜你喜欢
  • 1970-01-01
  • 2014-01-15
  • 2015-08-15
  • 2011-09-16
  • 2021-11-27
  • 2011-07-02
  • 2015-08-25
  • 2010-12-03
  • 2011-02-28
相关资源
最近更新 更多