Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Linux上,在没有选项-d的情况下,查找LS未显示正确结果的命令_Linux_Shell_Find_Ls - Fatal编程技术网

在Linux上,在没有选项-d的情况下,查找LS未显示正确结果的命令

在Linux上,在没有选项-d的情况下,查找LS未显示正确结果的命令,linux,shell,find,ls,Linux,Shell,Find,Ls,我需要检查所有的文件创建在最后一天内的当前文件夹,其中有百万的文件 如果我使用以下命令,将显示正确的80或90个文件。这是正确的 find . -ctime -1 -exec ls -ld {} \; 但是如果我把ls选项改成rt或l或其他没有d的东西。它显示了错误的结果。它显示了数千个文件。我最终不得不按下控制C来停止输出。下面所有的结果都是错误的,永远不会结束 find . -ctime -1 -exec ls -l {} \; find . -ctime -1 -exec ls -t {

我需要检查所有的文件创建在最后一天内的当前文件夹,其中有百万的文件

如果我使用以下命令,将显示正确的80或90个文件。这是正确的

find . -ctime -1 -exec ls -ld {} \;
但是如果我把ls选项改成rt或l或其他没有d的东西。它显示了错误的结果。它显示了数千个文件。我最终不得不按下控制C来停止输出。下面所有的结果都是错误的,永远不会结束

find . -ctime -1 -exec ls -l {} \;
find . -ctime -1 -exec ls -t {} \;
find . -ctime -1 -exec ls -rt {} \;
find . -ctime -1 -exec ls  {} \;
有人能告诉我这里发生了什么吗。为什么它只适用于d。 下面的作品

find . -ctime -1 -exec ls -lrtd  {} \;

如果您使用ls/tmp
ls/tmp
,您将看到原因。它提供了
/tmp
目录中的所有文件,而不是目录本身的详细信息


您可以通过使用
-d
ls
显示目录而不是目录中的文件(如您所见)或使用
查找-type f
将搜索限制为仅常规文件来“修复”此问题。假设您只对常规文件感兴趣,层次结构中也存在类似FIFO管道和设备的内容,但在
-type
上还有其他变体,可以根据需要选择这些文件(有关详细信息,请参见
查找
手册页)。

查找-mtime-3-type f-exec ls-lrt{};工作正常,但排序不正确