【发布时间】:2022-01-24 12:00:47
【问题描述】:
我希望我的 bash 脚本计算 .txt 文件的行数,该文件以“#”开头。
grep -o "#" $FILE | wc -l
我知道如何计算所有带有“#”的行,但我不知道如何实现条件,即“#”需要在程序的开头。
输入是其他 bash 脚本。我想计算不同的 bash 脚本中有多少 cmets。比我想将输出除以 txt 文件中的总行数。所以我知道 bash 脚本中有多少行是 cmets。就像如果我在 100 行代码中有 10 行 cmets,那么 10% 的代码是 cmets。
我还想在某个单词(例如“Hello”)之后扫描以“#”开头的这些行,并计算包含该单词的行数。希望有人也可以帮助我:)。
【问题讨论】:
-
请在您的问题中添加示例输入(无描述、无图像、无链接)以及该示例输入所需的输出(无评论)。
-
输入是其他 bash 脚本。我想计算不同的 bash 脚本中有多少 cmets。比我想将输出除以 txt 文件中的总行数。所以我知道 bash 脚本中有多少行是 cmets。就像如果我在 100 行代码中有 10 行 cmets,那么 10% 的代码是 cmets。
-
不要只描述您的输入,向我们展示minimal reproducible example,其中包含示例输入和给定输入的预期输出。我们需要您提供一些我们可以复制/粘贴来测试的东西。见How to Ask。
-
那么输入可能是:
#!/bin/bash#Write the line Helloecho "Hello"#Exit itexit 1但正如我所说,它可以是一些随机的 Bash 代码......这个需要的输出为 3,因为 3 行以“#”开头。但我需要实现,带有 shebang 的行不算数,因为它不是评论。但我想我可以自己做。 -
像
<whitespace>#...、echo "#this is not a comment"这样的行呢?echo "hello world" #this is a comment行包含一个命令和一个注释,因此在计算 cmets 代码的百分比时技术上不应计算
标签: bash