(慢)Linux“find”命令有一个选项“-ls”,可以像“ls -l”命令一样显示大小、日期等。但是“locate”命令似乎没有。那么我怎样才能获得与 locate 相同的功能呢?
我使用反引号将 locate 的输出传递给 ls,如下所示:
ls -al `locate -e somefile`
Run Code Online (Sandbox Code Playgroud)
...只要 somefile 存在,它就可以工作。但是如果 somefile 不存在,它会给我一个完整的目录列表。
如果我这样做:
ls -al `locate -e somefile` thisfileneverexists
Run Code Online (Sandbox Code Playgroud)
...然后它有点工作,如果你不介意错误行:
ls: cannot access thisfileneverexists: No such file or directory
Run Code Online (Sandbox Code Playgroud)
……这让我们想到了明显但极其丑陋的解决方法:
ls -al `locate -e somefile` thisfileneverexists 2>/dev/nul
Run Code Online (Sandbox Code Playgroud)
那行得通,但肯定有更好的方法!