在 UNIX 系统上,“定位”在数据库中搜索具有所选名称的文件或具有所选名称的文件夹中的文件。如何使用 locate 仅输出文件夹,而不输出文件?
小智 13
实际上,locate如果您使用该--regexp选项并且您不介意它吐出与您寻找的目录具有相同名称的文件,则它需要什么。“行尾”位置标记完成工作:
locate -r '/dirname$'
Run Code Online (Sandbox Code Playgroud)
locate--ignore-case如果这是您想要的,也支持。
我采用了这个解决方案:
locate -i "$foldername" | while read line
do
if [[ -d "$line" && `echo ${line##*/} | tr [:upper:] [:lower:]` = *`echo $foldername | tr [:upper:] [:lower:]`* ]]; then
echo "$line"
fi
done
Run Code Online (Sandbox Code Playgroud)