bash - 如何检查以特定字符串开头的目录是否存在?
问题描述
什么命令可用于检查 shell 脚本中是否存在以特定模式开头的目录?
例如 :
在 HOME 路径中,如果有很多以 ABCD_* 开头的目录,我想检查是否有任何目录以 pattern-ABCD_* 开头,或者不使用命令。
If (any directory matching this pattern exist) then echo found else echo not found fi
解决方案
find ~ -type d -name "ABCD_*"
在当前用户 (~) 的主目录中搜索具有模式“ABCD_*”的目录 (-type d)(使用 -name)
然后,您可以通过将其与 wc -l 集成来在 if 条件下使用它,因此:
if [[ "$(find ~ -type d -name "ABCD_*" | wc -l)" -gt "0" ]];
then
echo "Found";
else
echo "Not Found";
fi
推荐阅读
- python - sk学习,当我要预测的数据与我现在拥有的数据分布不同时该怎么办
- linux - 为什么 perf 不报告“dcache-store-misses”?
- java - 这种方法的时间复杂度是多少?
- android - 带有外部 GPS 的自定义位置服务通过 android things 连接到 Raspberry Pi
- sql - postgres 中的二维列是否已弃用?
- c# - 如何为具有多对多关系的数据编写get方法
- javascript - WordPress Divi 主题 jQuery 代码冲突
- python - Python 的 recvfrom() 函数不返回任何数据
- javascript - 如何将字符串转换为 Typescript 中的枚举
- excel - 我需要使用 VBA 将单元格拉入数据结构以根据 2 个单独的值使用