我有一堆压缩的数据文件(它们都以'.tagAlign.gz'结尾)。
我想将每个文件的前100,000行移动到一个未压缩的新文件中,并保持每个文件的名称不变。
我以前一次为一个文件做过这个,但在这种情况下我可能有50-100个文件。
我已经尝试过查找“重命名”等命令,但我对所有这些都很陌生,所以每个答案都太复杂了,我无法遵循。
在我重命名1个文件并移动前100,000行的情况下,这是我在终端中运行的命令:
gzcat nameoffile.fastq.gz | head -n 400000 > nameoffile_100k.fastq
提前致谢!
你的问题有点不清楚,但从我认为你所追求的是什么,你需要一个像这样的循环:
for fn in *.gz; do
n=$(basename "$fn" .fastq.gz)
gzcat "$fn" | head -n 100000 > "$n"_100k.fastq
done
(未测试。请非破坏性地测试...)