在macbook上使用AWK做文件记账

发布于 2024-10-12 14:52:42 字数 252 浏览 1 评论 0原文

我对 mac 有点陌生unix 环境.. 我正在尝试管理我的 itunes 库文件,这些文件目前非常混乱。

具体来说,我的一些专辑被翻录了两次——一次是 m4a,一次是 mp3。不幸的是,这意味着我在 iTunes 中有重复的内容。我想删除 mp3,但保留 m4a。并非所有专辑都有 m4a,因此我无法批量删除 mp3。

我的想法是使用 awk 搜索同时包含 m4a 和 mp3 的目录,然后仅删除这些目录中的 mp3。

有什么帮助吗?谢谢!

I'm kind of new to the mac & unix environment.. I'm trying to manage my itunes library files, which are pretty mixed up at the moment.

Specifically some of my albums were ripped twice - once in m4a, and once in mp3. Unfortunately, that means I have duplicates in iTunes. I want to delete the mp3's, but keep the m4a's. Not all albums have m4a's, so I can't do a mass delete of mp3's.

My thought is to use awk to search through the directories which have both m4a's and mp3's, and then delete the mp3's only in those directories.

Any help? thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

や三分注定 2024-10-19 14:52:42

你不需要 AWK。以下命令使用 find 查找所有 m4a 文件并将它们提供给 shell 命令。 shell 命令用“mp3”代替文件名末尾的“m4a”,检查以确保 mp3 文件存在,然后将其删除。

find . -name '*.m4a' -exec sh -c 'f="${1%m4a}mp3"; [ -f "$f" ] && rm "$f"' _ {} \;

要在实际使用之前进行尝试,请将 rm 更改为 echo

You don't need AWK. The following command uses find to find all the m4a files and feeds them to a shell command. The shell command substitutes "mp3" in place of the "m4a" at the end of the filename, checks to make sure the mp3 file exists, then deletes it.

find . -name '*.m4a' -exec sh -c 'f="${1%m4a}mp3"; [ -f "$f" ] && rm "$f"' _ {} \;

To try it out before you use it live, change the rm to echo.

你在看孤独的风景 2024-10-19 14:52:42
#!/bin/bash

while IFS= read -r -d 

如果它适合您,请删除 echo

\0' file; do [[ -f ${file%.*}.mp3 ]] && echo rm ${file%.*}.mp3 done < <(find . -type f -name "*.m4a" -print0)

如果它适合您,请删除 echo

#!/bin/bash

while IFS= read -r -d 

Remove the echo if it works for you

\0' file; do [[ -f ${file%.*}.mp3 ]] && echo rm ${file%.*}.mp3 done < <(find . -type f -name "*.m4a" -print0)

Remove the echo if it works for you

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文