<分区>
我得到一个包含与以下两种模式匹配的文件名的列表:
- 一个像 XXX_01.fastq
- 另一个是 XXX_01_001.fastq
我将编写一个 for
循环(在 bash 中)以遍历所有具有不同模式的文件名,我需要确定哪些文件名与上述模式匹配。有什么帮助吗?
<分区>
我得到一个包含与以下两种模式匹配的文件名的列表:
我将编写一个 for
循环(在 bash 中)以遍历所有具有不同模式的文件名,我需要确定哪些文件名与上述模式匹配。有什么帮助吗?
最佳答案
list.txt 的内容:
$ cat list.txt
AAA_01.fastq
AA_01_001.fastq
BBB_01_002.fastq
BBB_02.fastq
使用 bash 模式匹配的示例:
for file in `cat list.txt`; do
if [[ $file =~ [A-Z]{3}_[0-9]{2}\.fastq || $file =~ [A-Z]{3}_[0-9]{2}_[0-9]{3}\.fastq ]]; then
echo "MATCH $file";
fi;
done
输出:
MATCH: AAA_01.fastq
MATCH: BBB_01_002.fastq
MATCH: BBB_02.fastq
关于linux - 如何在 linux (bash) 中循环包含两个不同模式文件的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38318856/