10-15초 분량의 오디오를 추출해야 하는 여러 MP3 파일이 포함된 폴더가 있습니다. 또한 example-(name).mp3를 추가하여 변환된 파일의 이름을 바꾸고 싶습니다.
쉘 스크립트를 통해 이 작업을 어떻게 수행합니까?
답변1
이를 사용하고 싶거나 사용해야 하는 경우 sox
다음 명령을 사용할 수 있습니다 trim
.
for i in *.mp3
do
sox "$i" sample-"$i" trim 0 10
done
명령줄 유틸리티를 사용하여 분할을 수행할 수도 있습니다.mp3splt. 출력 파일을 명시적으로 설정하여 -o
원본 파일을 건드리지 않고 완료되면 삭제하기만 하면 됩니다. 이를 통해 파일에 정의된 태그를 출력 이름에 통합할 수 있습니다 sox
(지금은 필요하지 않은 것 같습니다).
for i in *.mp3
do
mp3splt "$i" 00.00.00 00.10.00 -o sample-"${i%.mp3}"
done
이는 출력 이름에 레이블 요소를 포함하기 위해 -o
기반 지시문과 함께 자주 사용됩니다.@
그리고 추가.mp3
. 당신이 없으면 당신은 파일을 ${i%.mp3}
얻을 것입니다 ..mp3.mp3
시간은 지점으로 구분되어 있으므로 사용하지 마십시오. :
분할 지점이 충분하지 않다는 별 도움이 되지 않는 오류 메시지가 표시됩니다.
스크립트가 작동하는지 테스트할 때까지 입력 파일을 삭제하지 않습니다. 또한 도중에 중지하거나 나중에 파일을 추가하는 경우 sample-
먼저 파일을 삭제하지 않으면 다시 실행할 수 없으므로 주의하세요. sample-...
콘텐츠를 별도로 유지하려면 사전에 디렉터리를 지정해야 할 수도 있습니다 .