how to? launch command with string of command line options


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting how to? launch command with string of command line options
# 1  
Old 03-14-2008
how to? launch command with string of command line options

my description from another thread...
Quote:
The other script I've got that I'd love to get working is one I wrote to combine a series of avi files using avidemux. to do this I wrote a script that takes the input files as the arguements, deduces the output file name and then because of avidemux's arguement procedure I have it create a set of strings that it needs to append to the call to avidemux for each file being added to the original. What I've done with this one is have it echo the required command to run which I can then copy and paste and it works fine, but it would be much nicer if I could get it to actually *launch* said command.
here's my code:
Code:
#!/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"

thanks for the help!
# 2  
Old 03-17-2008
I didn't read your code too carefully, so I could have missed something, but is there anything wrong with

Code:
echo 'some "command" --with options' | sh

You can have your variants, of course.

Code:
dhummy=`some "command" --with options`

Code:
fnord='some "command" --with options'
eval $fnord

etc etc.
era
# 3  
Old 03-23-2008
because I get this as the output:

Quote:
../combine-0.1: line 50: avidemux2_cli --nogui --audio-map --force-b-frame --force-unpack --rebuild-index --load "inputfile1.avi" --audio-map --force-b-frame --force-unpack --rebuild-index --append "inputfile2.avi" --force-smart --save "inputfile.avi" --quit: command not found
# 4  
Old 04-01-2008
anyone know why this is failing?
# 5  
Old 04-28-2008
requesting help again, thanks!
# 6  
Old 04-28-2008
How exactly did you manage to produce that error message? It looks like you had double-quoted the whole command, where you shouldn't.

If you change it back to echo, doesn't ../combine-0.1 | sh do what you want?
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Processing Multiple Arguments in Command Line Options

Hi All, I am new to scripting. Could you please assist me . Here is my requirement. I have written a script that has 2 option flags defined. -l) calls some function with the arguments passed in front of -l -r) calls second function with the arguments passed in front of -r *) calls the... (7 Replies)
Discussion started by: Jay Deshpande
7 Replies

2. Shell Programming and Scripting

Reading command line options from bash script

I have the following code and I am calling it using ./raytrac.bash -u and getting problems. For some reason opt_usage is still 0. opt_usage=0 iarg=0 narg=$# while (($iarg < $narg)) do (( iarg = $iarg + 1 )) arg=$argv usrInputFlag=`echo $arg | awk '/=/ {print 1}; ! /=/... (22 Replies)
Discussion started by: kristinu
22 Replies

3. UNIX for Dummies Questions & Answers

Running set options from the command line and bash command

I'm reading about debugging aids in bash and have come across the set command. It says in my little book that an addition to typing set you can also use them "on the command line when running a script..." and it lists this in a small table: set -o option Command Line... (5 Replies)
Discussion started by: Straitsfan
5 Replies

4. Shell Programming and Scripting

awk script file command line options

Being new to awk I have a really basic question. It just has to be in the archives but it didn't bite me when I went looking for it. I've written an awk script, placed it in a file, added the "#!/usr/bin/awk -f" at the top of the script and away I go. "% myAwk <inputfile>" gives me exactly what... (2 Replies)
Discussion started by: tomr2k
2 Replies

5. Shell Programming and Scripting

Issue with spaces in Java command line options

Hi, I am writing a shell script to build Java options dynamically in a variable array and pass them to java.exe. If an option value contains a space, I cannot find a way to get it interpreted correctly. Here is my example: #!/bin/bash JAVA_HOME=/opt/jvm/jre1.5.0_18 JAVA_OPTS=("-Xms256m... (4 Replies)
Discussion started by: Romain
4 Replies

6. Shell Programming and Scripting

Run perl script, with command-line options

Hello everyone, I have a perl script which takes various command line options from user like : test.pl -i <input_file> -o <output_file> -d <value> -c <value> Now I have multiple input files in a directory: <input_file_1> <input_file_2> <input_file_3> <input_file_4> ..... .... ...... (6 Replies)
Discussion started by: ad23
6 Replies

7. Shell Programming and Scripting

Using perl to get options from command line

Hi all, I want to get options from command line by perl. usage() options: -h Show this help message and exit -t Name of tester --timeout Set the timeout -l ... (1 Reply)
Discussion started by: Damon_Qu
1 Replies

8. UNIX for Dummies Questions & Answers

Copy a command string from the command line

How can we copy a command string from a previous command line and paste it into the cursor position on the current command line? I know that ^c will not work as the shell will interpret as an interrupt signal. Thanks, (1 Reply)
Discussion started by: Pouchie1
1 Replies

9. Shell Programming and Scripting

Associated array from command line options

I am looking to populate an (associated) array with a command line argument. The command line would look something like this: alert -action test -priority '10' -module test_module . . . The associated array would look like this after the data is read in flag=(action=test priority=10... (1 Reply)
Discussion started by: jperret
1 Replies

10. Programming

Executing command line options

Can someone please tell me how to modify/add to this code so that it recognizes UNIX command options (all beginning with "-") and executes the command with options? #include<stdio.h> #include<stdlib.h> int main(int argc, char *argv) { int i; system("stty -echo"); ... (8 Replies)
Discussion started by: Safia
8 Replies
Login or Register to Ask a Question

Featured Tech Videos