我需要使用数组迭代目录中与特定模式匹配的文件。例如:
./dirx/file1b_t1.tif
./dirx/file2b_z_t2_tif
./dirx/file3b_t3.tif
./dirx/file4b_x_t4.tif
我正在尝试构建一个列出上面第一个和第三个文件的数组。我知道“ls”不是构建数组的合适方法,但我尝试过“find”,但它不适用于“?”通配符。基本上我正在尝试复制:
ls ./dirx/*b_??.tif
但然后将列表通过管道传输到数组中。
答案1
只需直接存储 glob 表达式的扩展即可:
array=(./dirx/*b_??.tif)
顺便说一句,./
通常是多余的;您可以只使用array=(dirx/*b_??.tif)
并获取相同文件的有效路径。
[这似乎应该是先前问题的重复,但我找不到合适的匹配。还有谁?]