我想在我的 FreeBSD 服务器上设置一个简单的过滤系统,以便我创建目录的任意“视图”。
例如,我希望能够列出所有与模式“*.mp3”匹配的目录,但只显示目录名称。
例如,如果我在音乐文件夹上运行命令,我希望能够在一个命令中显示所有包含 mp3 的目录,并在单独的命令中显示所有包含 flac 文件的目录。
该命令find . -name "*.mp3"
几乎满足了我的要求,但它为每个文件显示一个条目。有没有办法将查找限制为每个目录一个结果?
答案1
使用此脚本:
find / -name "*.mp3" | grep -o '.*/' | sort | uniq > mp3files
答案2
怎么样:
寻找 。 -name '*.mp3' -print0 |xargs -0 -i 目录名 {} |uniq
我得到类似这样的信息:
./mnt/mp3/Adicts/完整单曲集(1995)
./mnt/mp3/Adicts/崛起与辉煌(2002)
./mnt/mp3/Adicts/赞美之歌(1981)
./mnt/mp3/Adicts/二十七(1992)
./mnt/mp3/Adicts/终极成瘾
./mnt/mp3/Adicts/Adicts 精选集 (1998)