min beskrivning från en annan tråd ...
Citat:
|
Andra script jag har fått att jag skulle älska att få arbeta är en jag skrev att kombinera ett antal avi-filer med Avidemux. att göra det jag skrev ett manus som tar indatafilerna som argument, härleder utfilnamet och sedan på grund av Avidemux argument förfarande jag har det skapas en uppsättning strängar att det behöver lägga på uppmaningen att Avidemux för varje fil som lagts till det ursprungliga. Vad jag har gjort med den här är har det eko som krävs för att köra som jag kan kopiera och klistra in och det fungerar bra, men det skulle vara mycket trevligare om jag kunde få det att faktiskt * starta * sa kommandot.
|
här är min kod:
Kod:
#!/bin/bash
IFS=$'\n'
function OutputName() {
input=$1
echo $input
input=`echo "$input" | sed -e 's/.[Aa][Vv][Ii]//'`
input=`echo "$input".avi`
output_name=$input
}
if [[ -z "@ARGV" ]]; then
echo "arguements are files to combine"
exit
else
if [[ ! -e $1 ]]; then
echo "no such input video!"
exit
else
first=`find "$1" -printf "%f"`
echo "Input File Found!: $first"
shift
fi
OutputName $first
echo "Output video name will be: "$output_name""
echo
fi
options="--audio-map --force-b-frame --force-unpack --rebuild-index"
appendlist=""
until [ -z "$1" ]
do
# echo "$1"
# echo "$appendlist"
if [[ ! -e $1 ]]; then
echo "no such input video! $1"
exit
else
filename=`find "$1" -printf '"%f"'`
appendlist="$appendlist $options --append $filename"
fi
# echo "$appendlist"
# echo
shift
done
echo "avidemux2_cli --nogui $options --load \"$first\" $appendlist --force-smart --save \"$output_name\" --quit"
tack för hjälpen!