带有符号链接递归和一些附加功能的Linux find

带有符号链接递归和一些附加功能的Linux find,linux,find,symlink,xargs,Linux,Find,Symlink,Xargs,我目前正在监视日志文件的许多目录;特别是那些刚刚创建的。我的Linux已经有很长一段时间没有使用了,经过一些尝试和错误,我已经把我需要的东西拼凑在一起了,但需要整整20秒或更长的时间才能恢复。我希望我能有一个专家来看看,并建议我的东西更精简一点 find . -type f -follow -print | xargs ls -ltr 2>/dev/null | grep '2\?10' | tail 例如,查找与名称匹配的最后10个文件。最理想的情况是,我希望将其转换为一个bash脚本

我目前正在监视日志文件的许多目录;特别是那些刚刚创建的。我的Linux已经有很长一段时间没有使用了,经过一些尝试和错误,我已经把我需要的东西拼凑在一起了,但需要整整20秒或更长的时间才能恢复。我希望我能有一个专家来看看,并建议我的东西更精简一点

find . -type f -follow -print | xargs ls -ltr 2>/dev/null | grep '2\?10' | tail
例如,查找与名称匹配的最后10个文件。最理想的情况是,我希望将其转换为一个bash脚本,它接受一个参数并替换grep表达式,但我一次只考虑一件事


提前谢谢你的帮助

我咬紧牙关写剧本;我以后会再修补它

#!/bin/bash

if [ $# != 2 ]; then
  echo findLog Usage: findLog [3 digit cluster] [pick 1: main message service detail soap]
  exit 0
fi

if [ "$2" == "service" ]; then
     file="$2-time-"
elif [ "$2" == "detail" ]; then
     file="$2-time-"
else file="$2-"
fi

cluster="$1"

#store logpaths for readability
a="/pathto/A"
b="/pathto/B"
c="/pathto/C"
d="/pathto/D"
e="/pathto/E"
f="/pathto/F"
g="/pathto/G"
h="/pathto/H"


logpaths=( $a $b $c $d $e $f $g $h )

for i in "${logpaths[@]}"
do
   ls -ltr "$i"/*.log | grep "$file"${cluster:0:1}${i: -1}${cluster: -2}
done