OSX 命令行查找具有不同扩展名的重复文件名

Nav*_*bas 2 terminal bash command-line applescript macos

我已经解决了所有类似的问题 + 安装了一些命令行实用程序,例如 duff,但没有成功。

在我的图像目录中,我有同名但具有不同扩展名(jpg 和 png)的图像。我只想打印具有不同扩展名的重复文件名的文件名。(例如 foo.jpg & foo.png) 或至少一个文件名 (foo)

到目前为止,我尝试了这些方法

find . -exec bash -c 'basename "$0" ".${0##*.}"' {} \; | sort | uniq

find . -type f \( -name "*.jpg" -o -name "*.png" \)
Run Code Online (Sandbox Code Playgroud)

这些命令中的大多数都会向我返回Nothing OR All the files OR unique filename but not the Duplicate those

AFH*_*AFH 6

我建议修改你的第二个命令:

find . -type f -name "*.jpg" | \
    while read -r f; do [ -e "${f%.jpg}.png" ] && echo "${f%.jpg}"; done
Run Code Online (Sandbox Code Playgroud)

这将查找所有.jpg文件并检查相应.png文件是否存在,并显示不带扩展名的完整路径。

请注意,如果.png文件少得多,搜索这些.jpg文件并检查相应文件会更有效。

[bash在 Ubuntu 18.04.1 上测试。]