我想使用该find
命令并打开文件浏览器(Nemo),结果如下:
这样就可以了
find . -name "foo*" -exec nemo {} +
它为每个结果打开一个新窗口。因此,为了避免在结果太多时打开大量窗口,我想使用该命令tail -<number>
来限制窗口数量。
这不起作用:
find . -name "foo*" -exec tail -1 {} \; -exec nemo {} +
既然打开了所有的窗户。
有没有办法让第二个-exec
参数作为第一个参数-exec
?或者我误解了什么?
使用案例:xfce 菜单 > 搜索命令,它将采用要查找的字符串作为参数:
find /my/home/dir -name "*%s*" -exec tail -<x> {} \; -exec nemo {} +
。请注意,如果我(不小心)搜索字符串“a”可能会产生数百个结果。
答案1
在
find . -name "foo*" -exec tail -1 {} \; -exec nemo {} +
您正在执行tail
找到的每个文件的内容,而不是文件名列表。
至少使用 GNU Coreutils,你可以做类似的事情
find . -name "foo*" -print0 | tail -zn 1 | xargs -0 nemo