gpt4 book ai didi

linux - 对所有文件和子目录循环 cat 命令

转载 作者:太空宇宙 更新时间:2023-11-04 09:14:59 26 4
gpt4 key购买 nike

我有很多 2 种语言的 mp3 文件,所以

语言 1 是 EN/1/1.mp3 .... .. EN/2/12.mp3

语言 2 是 DE/1/1.mp3 .... .. DE/2/12.mp3

所以文件在相同的子文件夹和相同的名称中,我想合并它们

EN/1/1.mp3 和 DE/1/1.mp3 为 1 个文件,保存在文件夹 ENDE/1/1.mp3

我用这个命令

cat  EN/1/1.mp3 DE/1/1.mp3 > ENDE/1/1.mp3

它可以工作,但我想要一些东西可以将此命令循环到所有子文件夹中的所有文件。

最佳答案

要遍历文件,您可以使用以下内容,但正如@ekaerovets 所述,我相信您的文件将无效。

cd EN
for F in */*.mp3; do
mkdir -p ../ENDE/$(dirname $F)
cat $F ../DE/$F > ../ENDE/$F
done

这是假设您的文件都只有一个子目录深。如果树更深,那么 find 会更合适,即:

cd EN
for F in $(find -type f -name \*.mp3); do
mkdir -p ../ENDE/$(dirname $F)
cat $F ../DE/$F > ../ENDE/$F
done

关于linux - 对所有文件和子目录循环 cat 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48936113/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com