【发布时间】:2014-03-12 11:56:54
【问题描述】:
我有 2 个单独的文本文件,每个文件的格式完全相同。我可以 grep FILE1.txt 查找特定搜索词并输出每个匹配项的行号。行号以数字顺序输出到文件或变量。
我想使用每个行号并将该行从FILE2.txt 按数字顺序打印到单个OUTPUT.txt。有谁知道一种方法,使用awk 或sed 来做到这一点?
我有一个值为 25 26 27 28 的字符串变量 $linenumbers。
我使用以下命令:
for i in $linenumbers;做 sed -n "/$I/p" $i test_read2.fastq >> test.fastq;完成。
我得到了
的错误sed: can't read 25: No such file or directory
sed: 无法读取 26: 没有这样的文件或目录
sed: 无法读取 27: 没有这样的文件或目录
sed: 无法读取 28: 没有这样的文件或目录
如果我一个一个地执行这个 sed 命令,我可以从文件中提取第 25、26、27 和 28 行,并使用以下命令将其打印到文件中;
sed -n "25p" test_read2.fastq >> test.fastq
我想用变量替换“25p”,这样它就可以从文件中提取多行(25,26,27,28),而不是一一执行...
【问题讨论】:
-
请向我们展示您尝试过的一些代码。
-
@user3406833,给出一些输入和输出?