从find(shell)命令中删除一些输出行

时间:2017-06-13 13:58:09

标签: git bash shell

我正在尝试在本地计算机上找到所有git存储库的列表。我确实得到了所有这些,但我也得到了一些在输出中有权限被拒绝的存储库

find . -name .git -type d -prune | sed '/Permission/d'

命令的输出是

find: ./.Trash/Fuze_old.app/Contents/Frameworks/Fuze Helper.app: Permission denied
./.nvm/.git
./.oh-my-zsh/.git
./.Trash/AutoLayout/.git
./.Trash/DemoProject/.git
find: ./Library/Python: Permission denied
./.Trash/NavView/.git
./.Trash/Something/.git
./.zsh/zsh-autosuggestions/.git

我不希望权限被拒绝。

我如何得到它?

1 个答案:

答案 0 :(得分:4)

“权限被拒绝”行可能是STDERR而不是STDOUT,这就是你的sed命令无效的原因。试试这个(如果你是在类Unix系统上):

find . -name .git -type d -prune 2>/dev/null