我有一个query_ids
包含多行的文件,例如:
id1
id2
id3
Run Code Online (Sandbox Code Playgroud)
我用来grep idx
在 中查找 id 的匹配项my_file
。
我将这些匹配重定向到一个新matches
文件。
我还使用grep
with 选项-v
来获取重定向到mismatches
文件的所有不匹配项。我正在使用这个小脚本:
#!/bin/bash
for i in $(cat query_ids)
do
# saving matches
grep "$i" my_file >> matches
# saving mismatches
grep -v "$i" my_file >> missing
done
Run Code Online (Sandbox Code Playgroud)
我显然做错了什么:当从文件中
手动搜索一些 id 时,我发现它们存在。
即使该文件应该只包含未在 I 中找到的文件中的 id,但我确实找到了匹配项。missing
my_file
missing
query_ids
my_file
因此,当选择一些随机 id 时,让我们说 id3 通过执行grep id3 missing
并且grep id3 my_file
都返回匹配项。<br>
为什么我的代码将 id3 分配给 …