linux 查找最近 X 分钟内创建的文件 + 排序不是 return 预期的列表

linux find files by created in last X minutes + sort does not return expected list

我有一个包含许多jpg文件的文件夹,其中每个文件名以以下形式表示创建时间:“20220204T160311.746....jpg”(“...”代表附加数据)。 我正在尝试获取在最后 X 分钟内创建的所有文件。如果有人问 Google,这样的查询有很多结果,但是,我在尝试以下操作时得到了奇怪的结果:

find . -cmin -50 \( ! -iname "*.csv" ! -iname ".*" \) -ls | sort -n

结果没有开始正常(“现在”是16:26):

 14466561   2636 -rw-r--r--   1 root     root      2695349 Feb  4 16:03 ./20220204T160348.526-cam4-791-AREASbw-32358.jpg
 14466569   2208 -rw-r--r--   1 root     root      2257356 Feb  4 16:03 ./20220204T160354.069-cam4-614.jpg
 14466571   1044 -rw-r--r--   1 root     root      1068758 Feb  4 16:03 ./20220204T160354.069-cam4-614__chng_182.jpg
 14466579   2208 -rw-r--r--   1 root     root      2258697 Feb  4 16:03 ./20220204T160359.296-cam4-352.jpg
 14466581   1048 -rw-r--r--   1 root     root      1070111 Feb  4 16:03 ./20220204T160359.296-cam4-352__chng_175.jpg
 14466589   2216 -rw-r--r--   1 root     root      2268675 Feb  4 16:04 ./20220204T160404.682-cam4-179.jpg
 14466591   1048 -rw-r--r--   1 root     root      1070053 Feb  4 16:04 ./20220204T160404.682-cam4-179__chng_273.jpg
 14466597   2204 -rw-r--r--   1 root     root      2253706 Feb  4 16:04 ./20220204T160409.957-cam4-571.jpg
 14466599   1048 -rw-r--r--   1 root     root      1070335 Feb  4 16:04 ./20220204T160409.957-cam4-571__chng_154.jpg
 14466600   1044 -rw-r--r--   1 root     root      1068675 Feb  4 16:04 ./20220204T160409.957-cam4-571__chng_309.jpg
 14466601   2652 -rw-r--r--   1 root     root      2712638 Feb  4 16:04 ./20220204T160409.957-cam4-571-AREASbw-31696.jpg
 14466610   2208 -rw-r--r--   1 root     root      2259408 Feb  4 16:04 ./20220204T160415.421-cam4-959.jpg
 14466611   1048 -rw-r--r--   1 root     root      1070365 Feb  4 16:04 ./20220204T160415.421-cam4-959__chng_272.jpg
 14466620   2212 -rw-r--r--   1 root     root      2264606 Feb  4 16:04 ./20220204T160420.666-cam4-742.jpg
 14466621   1048 -rw-r--r--   1 root     root      1070276 Feb  4 16:04 ./20220204T160420.666-cam4-742__chng_173.jpg

当我继续向上滚动时,它到达了文件排序错误的部分(比如应该是列表的开头):

14457644   2240 -rw-r--r--   1 root     root      2293209 Feb  4 16:26 ./20220204T162633.985-cam4-188.jpg
 14457645   1056 -rw-r--r--   1 root     root      1080805 Feb  4 16:26 ./20220204T162633.985-cam4-188__chng_171.jpg
 14457658   2236 -rw-r--r--   1 root     root      2286664 Feb  4 16:26 ./20220204T162639.299-cam4-801.jpg
 14457659   1056 -rw-r--r--   1 root     root      1080042 Feb  4 16:26 ./20220204T162639.299-cam4-801__chng_158.jpg
 14462048   2200 -rw-r--r--   1 root     root      2252735 Feb  4 15:49 ./20220204T154927.284-cam4-095.jpg
 14462049   1044 -rw-r--r--   1 root     root      1065249 Feb  4 15:49 ./20220204T154927.284-cam4-095__chng_134.jpg
 14462088   2204 -rw-r--r--   1 root     root      2255657 Feb  4 15:49 ./20220204T154932.490-cam4-571.jpg
 14462089   1044 -rw-r--r--   1 root     root      1066449 Feb  4 15:49 ./20220204T154932.490-cam4-571__chng_228.jpg
 14462118   2204 -rw-r--r--   1 root     root      2254481 Feb  4 15:49 ./20220204T154937.767-cam4-237.jpg
 14462127   1044 -rw-r--r--   1 root     root      1066700 Feb  4 15:49 ./20220204T154937.767-cam4-237__chng_79.jpg

怎么中间从15:49回到16:26? 它发生在我 运行 的每个查询上,除非是像 10 分钟这样的短期查询。

默认情况下排序使用第一列。使用 -k 指定要排序的列号。

find . -cmin -50 \( ! -iname "*.csv" ! -iname ".*" \) -ls | sort -n -k 7