我想执行一个选择随机目录路径的脚本:
find / -type d | shuf -n1
不幸的是,我收到有关禁止输入某些目录的错误消息。
如何使用find从搜索中排除目录?
我想执行一个选择随机目录路径的脚本:
find / -type d | shuf -n1
不幸的是,我收到有关禁止输入某些目录的错误消息。
如何使用find从搜索中排除目录?
Answers:
要排除特定路径,在Linux上:
find / -path /sys -prune -o -path /proc -prune -o -type d
另一种方法是告诉find
不要在不同的文件系统下递归。
find / -xdev -type d
您还可以使用locate查询数据库的文件名(通常每晚更新一次,也可以使用手动更新它updatedb
),而不是实时系统。
locate '*' | shuf -n 1
find / -xdev -type d 2>/dev/null
。
find / \( -path /sys -o -path /proc \) -prune -o -type d
想,如果你想排除更多迪尔斯就像是有用的/dev
或/tmp
等
使用GNU查找,您还可以使用正则表达式选项,例如:
find / -regextype posix-extended -regex "/(sys|srv|proc)" -prune -o -type d