我想在主目录中找到所有点目录
find ~/ -name .* -Olevel 1
但它不能工作
答案1
问题是你的 shell 正在扩展.*
。你想改为引用它,即'.*'
,这样find
它就会处理它而不是你的 shell。
例如,要查找主目录中的所有目录,
find ~ -maxdepth 1 -type d -name '.*'
在我的系统上,这会产生:
/root/.config
/root/.java
/root/.cache
/root/.aptitude
/root/.gnupg
/root/.grails
/root/.dbus
/root/.ssh
答案2
您可以使用
find ~/ -maxdepth 1 -name '.*' -type -d
.*
您必须通过在它周围放置 来阻止 shell 扩展 ,'
然后 find 才能'.*'
正确扩展。要仅查找目录,请使用开关-d
,要将 find 限制在~/
目录中,请使用-maxdepth 1
。