在 linux 中按字母顺序查找目录中的第 n 个文件

Find nth file in directory alphabetically in linux

有人知道我可以用来在目录中查找第 n 个文件的 bash 命令吗? 例如。我的目录中有 4 个文件

aaa、aab、aac、aad。

(我的实际目录比4个文件多很多)

我可以写什么命令来获取第 3 个文件 (aac)?

另一个问题是如何找到 aac 的索引位置(通过终端命令)(即它是 3)

简单地说,

lst=(*)
echo "${lst[2]}" # shows the 3rd file.

如果您想知道 aac 在列表中的什么位置,

for((i=0;i<${#lst[@]};i++)); do 
  if [[ aac == "${lst[i]}" ]]; then echo "$i"; break; fi
done
2

如果你想要非零序数,echo "$((i+1))"

如果您想包含“隐藏”文件、and/or 排除目录等,这将变得更加复杂...只需添加几行代码来减少细节。