Vì vậy, tôi đang sử dụng tập lệnh tôi đã tạo để chuyển đổi video sang định dạng webm. Một chương trình nhất định gọi tập lệnh, gửi %ftên đầy đủ, tuyệt đối của video, như thế này:
converter.sh %f
nơi %fcó hai phần mở rộng có thể, .avihoặc .mpg.
# /bin/bash
ffmpeg -i $1 `dirname $1``basename $1 avi`webm && rm $1
Nó hiện đang hoạt động hoàn hảo khi $1chứa một .avitệp, vì basenameloại bỏ .aviphần mở rộng. Khi $1kết thúc với .mpgthay thế, kết quả là .mpgwebm.
Làm cách nào tôi có thể sửa đổi tập lệnh đó để có thể nhận hai định dạng khác nhau có thể?
Tiếp tục: Nếu $1có /somedir/video.avi, kịch bản nên làm:
ffmpeg -i /somedir/video.avi /somedir/video.webm
Và nếu $1có /somedir/video.mpg, kịch bản nên làm:
ffmpeg -i /somedir/video.mpg /somedir/video.webm
Tôi biết điều này có thể là ngu ngốc đối với một số người, nhưng tôi là người mới với bash.
$(…)