나는 이런 명령을 사용하는 것을 좋아합니다
avconv -i %f -map 0:1 -c:a copy %f.m4a
Thunar 또는 Dolphin의 사용자 정의 작업에서는 트랜스코딩 없이 mp4 및 flv에서 오디오를 추출할 수 있습니다.
그러나 이는 입력 파일의 확장자를 포함하는 이름을 출력합니다.
"name.mp4" 비디오에서 "name.mp4.m4a"라는 오디오 파일을 얻었습니다.
출력이 "name.m4a"가 되도록 명령을 어떻게 조정합니까?
답변1
bash 명령을 실행하여 bash의 문자열 조작 기능을 사용할 수 있습니다.
bash -c 'avconv -i "$0" -map 0:1 -c:a copy "${0%%.*}".m4a' %f
foo bar.mp4
(파일 관리자가 단일 매개변수처럼 파일 이름을 전달 한다고 가정합니다 .)
and - 전자 bash
를 모두 갖는 것은 탐욕적입니다( 첫 번째와 두 번째 가 됩니다 ). 이 경우 나는 후자를 사용하려고 하며 여기에 특수 문자가 분명히 있기 때문에 파일 관리자로 대체될 것이라고 가정합니다.${var%%suffix}
${var%suffix}
foo.bar.mp4
foo
foo.bar
%%
%
%