【发布时间】:2019-05-07 12:49:45
【问题描述】:
我有一个文件与另一个文件中的行部分匹配。为了做到这一点,我希望生成一个 while 循环,其中读取并将每行部分匹配的变量替换为 grep 命令以搜索具有部分匹配的数据库文件,但由于某种原因,我没有得到输出(一个空的 outputfile.txt)。
这是我当前的脚本
while read -r line; do
grep $line /path/to/databasefile >> /path/to/folder/outputfile.txt
done < "/partial_matches.txt"
数据库有多行,其后是序列名称,然后是 DNA 序列:
>transcript_ab
AGTCAGTCATGTC
>transcript_ac
AGTCAGTCATGTC
>transctipt_ad
AGTCAGTCATGTC
部分匹配的搜索文件有文本行:
ab
ac
我正在寻找以下的回报:
>transcript_ab
>transcript_ac
任何帮助将不胜感激。谢谢。
【问题讨论】:
-
所以
/outputfile.txt是空的? (P.S. 你是怎么写信给/的?你是以root身份运行的吗?!) -
@RobinGreen 是的,outputfile.txt 是空的,我只是没有包含文件的路径,但是我在问题中进行了编辑和澄清
-
你有写入文件的权限吗?
-
@RobinGreen 是的,它在我的用户目录中
-
这并不一定意味着您有权对其进行写入。请检查。
标签: linux bash while-loop grep