在我的目錄我有文件(* fastq.gz.fasta)和目錄,名稱中包含文件名(* fastq.gz.fasta-blastdb):擊(分)文件名比較失敗
IVC6_Meino.clust.gz.fasta-blastdb
IVC5_Mehiv.clust.gz.fasta-blastdb
....
IVC6_Meino.clust.gz.fasta
IVC5_Mehiv.clust.gz.fasta
....
在bash腳本中,我想比較文件名和直接使用後者的cut選項來提取文件名部分。如果這兩個名字匹配,我想做更多的事情(現在回聲匹配或不匹配)。 我寫了下面的一段代碼:
#!/bin/bash
for file in *.fasta
do
for db in *-blastdb
do
echo $file, $db | cut -d '-' -f 1
if [[ $file = "$db | cut -d '-' -f 1" ]]; then
echo "match"
else
echo "no match"
fi
done
done
但它不能檢測匹配。輸出看起來是這樣的:
...
IVC6_Meino.clust.gz.fasta, IIIA11_Meova.clust.gz.fasta
no match
IVC6_Meino.clust.gz.fasta, IVC5_Mehiv.clust.gz.fasta
no match
IVC6_Meino.clust.gz.fasta, IVC6_Meino.clust.gz.fasta
no match
最後一行應閱讀比賽,你可以看到,該字符串看起來是一樣的。 我錯過了什麼?