我正在尝试编写一个脚本来压缩目录中具有特定后缀和不同文件类型的特定文件。我看到有关压缩特定扩展名的所有文件的帖子,但对如何仅获取具有特定后缀的某些文件感到困惑。
这是目录内容的示例:
MCI_1003_4_FaMap.hdr the MCI_1003_4_RefB0.dat MCI_1003_4_Tensor.img
MCI_1003_4_ColorMap0.hdr MCI_1003_4_EgVec0.dat MCI_1003_4_FaMap.img MCI_1003_4_RefB0.hdr MCI_1003_4_Trace.dat
MCI_1003_4_ColorMap0.img MCI_1003_4_EgVec0.hdr MCI_1003_4_MeanDwi.dat MCI_1003_4_RefB0.img MCI_1003_4_EgVal0.dat MCI_1003_4_EgVec0.img MCI_1003_4_MeanDwi.hdr MCI_1003_4_Tensor.dat
MCI_1003_4_FaMap.dat MCI_1003_4_MeanDwi.img MCI_1003_4_Tensor.hdr
我只想将以下文件压缩成 DTI.zip 之类的文件
MCI_1003_4_MeanDwi.hdr
MCI_1003_4_MeanDwi.img
MCI_1003_4_Trace.dat
MCI_1003_4_RefB0.hdr
MCI_1003_4_RefB0.img
这是我对 for 循环的不成功尝试:
for i in * ; do zip -r "DTI.zip" "*RefB0.hdr" "*RefB0.img "*Tensor.dat" "*MeanDwi.hdr" "*MeanDwi.img" $i; done
答案1
为什么不只是:
zip DTI.zip *RefB0.hdr *RefB0.img *Trace.dat *MeanDwi.hdr *MeanDwi.img
不需要 for 循环或引用。