Ffmpeg 스크립트 mp4mp3

0

질문

#!/bin/bash
for i in *.mp4
do
ffmpeg -i "$i" -ab 128k "${i%mp4}mp3"
done

이 일괄 변환 모든*.mp4 파일에 현재 디렉터리를 mp3. ffmpeg 를 설치해야 하나에 포함되는 배포판. 때로는 내가 원하지 않는 모든 것에 CWD 변환됩니다. 나는 이 스크립트를 수정할 수 있도록.

  1. 이 없는 경우 인자 스크립트가 아무것도
  2. 는 경우 인수*.mp4 으로 변환합니다.mp4 니다.mp3
  3. 는 경우 인 파일명을 사용할 수 있다.mp4 만 그것을 변환하는 파일을 파일명을 사용할 수 있다.mp3

을 얻을 수 있습니 어떤 도움을 강타 스크립트입니까? TIA! 는 방법을 확실하지 않을 읽을 인수 off 명령 라인에 넣어 스크립트

$1$2? 다만 표시 하나의 예입니다. 나는 할 수 있어야합니다.

bash ffmpeg script
2021-11-23 16:45:49
1

최고의 응답

0

당신은 할 수있는 쉘 처리 확장 및 다음 스크립트에서 반복 위치 매개 변수입니다. 당신이 할 수 있는 것으로

for i in "$@"

또는,심지어는 짧은 단지

for i

으로 기본적으로 반복 위치 매개 변수입니다.

그래서,당신의 스크립트는 것처럼 보

#!/usr/bin/env bash

for i; do
    ffmpeg -i "$i" -ab 128k "${i%mp4}mp3"
done

와 호출하는 것처럼

yourscript           # Do nothing
yourscript *.mp4     # Expands to all .mp4 files
yourscript file.mp4  # Process just file.mp4
2021-11-23 17:13:32

대단히 감사합니다. 이 잘 작동합니다. 를 사용할 수 있습니$내가 어떤 bash 스크립트를 읽는 첫 번째 인수 후 scrfipt 이름? 고 생각했$1$2$3etc.
teddymills

@teddymills"magic"에 for i 선는 암시적으로는 for i in "$@"$@ 열 모두의 위치를 매개 변수입니다. $1, $2 etc. 는 개별 위치를 매개 변수하려는 경우 직접 액세스.
Benjamin W.

이름 i 은 임의의 수 없는 또한 사용 for paramfor file 대신,그리고 참고로 $param$file.
Benjamin W.

다른 언어로

이 페이지는 다른 언어로되어 있습니다

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................