我有bash脚本,该脚本循环遍历原始文件夹中的文件,并将它们放入音频文件夹中。这样就可以了。
#!/bin/bash
PATH_IN=('/nas/data/customers/test2/raw/')
PATH_OUT=('/nas/data/customers/test2/audio/')
mkdir -p /nas/data/customers/test2/audio
IFS=$'\n'
find $PATH_IN -type f -name '*.wav' -exec basename {} \; | while read -r file; do
sox -S ${PATH_IN}${file} -e signed-integer ${PATH_OUT}${file}
done
我的问题是,随着文件夹的增加,我不想在已经转换的文件上运行脚本,因此我只想循环浏览尚未转换的文件。即,这些文件仅以原始格式而不是音频格式。
我找到了功能
差异音频原始
我可以做到这一点,但是我找不到将其合并到我的bash脚本中的好方法。我们将不胜感激在正确方向上的任何帮助或推动。
答案 0 :(得分:2)
您可以这样做:
diff <(ls -1a $PATH_OUT) <(ls -1a $PATH_IN) | grep -E ">" | sed -E 's/> //'
第一部分将比较两个文件夹中的文件,第二部分将过滤出仅添加的内容,第三部分将从diff符号中清除列表以仅获取名称。