gpt4 book ai didi

linux - 检查目录中的任何文件是否包含常量文件中的单词

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:43:29 25 4
gpt4 key购买 nike

我有一个包含 n 个文本文件的目录。现在,我想检查这些文件中的任何一个是否包含常量文件的一个(或多个)单词。这些文件都是字典,字数不同。常量文件是一个密码列表,我想在其中检查这些单词。正确命中的数量应该保存在一个变量中。这个词也应该保存在一个变量中(我认为是一个数组)。

例如:file1包含This is my dictionaryfile2包含And another,我的密码列表包含 这是对字典的测试,我们没有其他的file1 的命中是 This is dictionary(n1=3 词),file2 和一个(n2=2 个单词)。

我现在的代码是

#!/bin/bash
# program_call passwordlist.txt *.txt
passwordlist="$1"
dictionarys="$*"
for comparison in $dictionarys; do
cat $passwordlist $comparison| sort | uniq -d >${comparison}.compare
done

我最大的问题之一是,我有不同数量的字典。也许 2,也许 200。没关系,所有这些都必须根据密码列表进行检查,结果(正确单词的数量和正确单词本身)必须保存在他的 OWN 变量中。所以我认为每个字典都有两个变量。

最佳答案

另一种方式

$ for f in file{1,2}; 
do echo -n $f": ";
grep -iow -f <(tr ' ' '\n' <cons) $f |
wc -l;
done

file1: 3
file2: 2

将常量文件每行转换一个单词,检查字典文件中的单词匹配忽略大小写并计算匹配的出现次数。

关于linux - 检查目录中的任何文件是否包含常量文件中的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40050005/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com