Sponsored Content
Top Forums Programming Unix Shell background processing Post 302457313 by Corona688 on Monday 27th of September 2010 06:08:21 PM
Old 09-27-2010
[edit] hang on

---------- Post updated at 04:04 PM ---------- Previous update was at 04:00 PM ----------

It could be crashing because you don't necessarily have 20 arguments. in which case you'll be feeding strcmp either garbage or NULL, either of which would cause it to crash. You'll need to remember how many arguments parseargs found(maybe put it through its return value instead of 'void'?)

In any case I don't think strcmp will do what you want. It returns 0 when the two strings are exactly the same, meaning, it'll only match on a line with no newlines containing nothing but &. I think you want strstr or strchr instead, see their man pages.

---------- Post updated at 04:08 PM ---------- Previous update was at 04:04 PM ----------

Code:
    switch(pid)
    {
        case -1:  
            cout << "DEBUG:Fork Failure" << endl;
            exit(-1);
            break;

        case  0:
            execvp(cmd[0], cmd);
            
            if(execvp(cmd[0], cmd) == -1)
            {
                cout << "Command Not Found" << endl;
                exit(0);
            }
            break;
   
        default:  
            wait(NULL);
            cout << "DEBUG:Child Finished" << endl;
            break;
    }

I'm surprised this even compiled, a break in the default section is mandatory in some common compilers.

Imagine case 0 without the break. If execvp() fails and doesn't catch the error it might keep going, and print "DEBUG: child finished" because the case statements don't tell it where to end, just where to begin. But with the break, it will leave that section of code entirely like you expected it to do.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

background for unix

Hi, I am a newbie learing Unix , I have started with teh book "the Design of the Unix OS" by Bach.After which I plan to read "UNIX Network Programming" by Richard Stevens. What is the background that one needs to learn unix. I know C. But I am not sure about my Operating Systems... (4 Replies)
Discussion started by: ramyar
4 Replies

2. UNIX Desktop Questions & Answers

Unix Background

Hi, I'm new to this forums and to Unix OS... Is this the right place to put this thread? I just need to ask how to set the wallpaper that goes through the x-term windows in a Unix system? It's as if the x-term windows is transparent... I tried modifying the .login file and things got... (5 Replies)
Discussion started by: Gri3v3r7
5 Replies

3. Shell Programming and Scripting

Background shell script

I have a friend at work that asked me a question today and I figured I would seek help here. How does a shell script know whether it is running in the background or not? Thanks in advance for help (5 Replies)
Discussion started by: Moofasa
5 Replies

4. Shell Programming and Scripting

run a shell in the background

How can I run a shell in the background? cat test.sh #!/bin/sh sleep 600 Thank u very much indeed! (2 Replies)
Discussion started by: GCTEII
2 Replies

5. Linux

background processing in BASH

I have script 3 scripts 1 parent 2 children child1 child2 In the code below the 2 child processes fire almost Instantaneously in the background, Is that possible to know the status of pass/fail of each process "as it happens" ? In the present scenario although Child2... (5 Replies)
Discussion started by: jville
5 Replies

6. Shell Programming and Scripting

background processing in BASH

I have script 3 scripts 1 parent (p1) and 2 children child1 and child2 I have script 3 scripts 1 parent 2 children child1 child2 In the code below the 2 child processes fire almost Instantaneously in the background, Is that possible to know the status of pass/fail of each process... (12 Replies)
Discussion started by: jville
12 Replies

7. Shell Programming and Scripting

BASH - Handling background processes - distributed processing

NOTE: I am using BASH and Solaris 10 for this. Currently in the process of building a script that has a main "watcher" daemon that reads a configuration file and starts background processes based on it's global configuration. It is basically an infinite loop of configuration reading. Some of the... (4 Replies)
Discussion started by: dcarrion87
4 Replies

8. Programming

awk processing / Shell Script Processing to remove columns text file

Hello, I extracted a list of files in a directory with the command ls . However this is not my computer, so the ls functionality has been revamped so that it gives the filesizes in front like this : This is the output of ls command : I stored the output in a file filelist 1.1M... (5 Replies)
Discussion started by: ajayram
5 Replies

9. Shell Programming and Scripting

How to run multiple functions in Background in UNIX Shell Scripting?

Hi, I am using ksh , i have requirement to run 4 functions in background , 4 functions call are available in a case that case is also in function, i need to execute 1st function it should run in background and return to case and next i will call 2nd function it should run in background and... (8 Replies)
Discussion started by: karthikram
8 Replies

10. Shell Programming and Scripting

How to log file processing details to database table usnig UNIX shell script?

we are getting files on daily basis.we need to process these files. i need a unix shell script where we can count 1-The no of files processed 2-No of data/record processed for each files. The script should log these details into a database table. If there is any error while file... (3 Replies)
Discussion started by: Atul kumar
3 Replies
PHOTON(1)																 PHOTON(1)

NAME
photon - generates photo albums SYNOPSIS
photon [OPTIONS] [PATH] DESCRIPTION
Photon generates clean, yet configurable, static HTML photo galleries. All of the work is done from the command line, and the resulting output can easily be configured by changing the template files found in /usr/share/photon/templates. To create a new template (skin), first create a new directory: mkdir -p ${HOME}/.photon/templates/my_theme/ Then copy the contents of /usr/share/photon/templates/photonv1/ to this new directory. Photon only needs three files to build pages: index.html used to display the content of a folder image.html used to display the page for an image movie.html used to display the page for a movie If a file is missing, then photon will throw an error and will not run. HOW TO BUILD A GALLERY
Quick start $ photon -o myoutputdir /photos Use the gimp plugin $ photon --resize-plugin=gimp -v -o myoutputdir /photos Change the size for all images and the thumbnail and keep the original photo $ photon --sizelist=0,1600x1200,800x600 --thumbsize=320x240 -o myoutputdir /photos Create a gallery from your custom template (skin) $ photon -k my_theme -o myoutputdir /photos See photon help $ photon --help OPTIONS
-a | --awstats Insert Javascript for Awstats --awstats-url=URL Change default value for Awstats script url -c NAME | --comment Name of the comment file (default .comments) -d NUM | --display-columns=NUM Number of columns in index (default 3) -E | --no-exif Don't include EXIF information in HTML file -f | --force Overwrite non-image generated files (html, javascript, etc) (default no) -ff | --force --force Overwrite image files (default no) -h | --help Print this help -I | --no-index Do not generate the high level index.html -J | --no-javascript Do not use javascript (no shortcuts, ... ) -k | --skin=THEME Skin selector (default photonv1) --print-skins Print out available skins (templates) -l NUM | --display-lines=NUM Number of lines in index (default 5) -m | --movie Movie mode, include link to movie (*.mov) -o NAME | --output-directory=NAME Name of the output directory -s LIST | --sizelist=LIST Image sizes (default 0,1024x768,800x600,640x480). Zero, which is the default, uses the original resolution. W x H specifies the width and height of the image in pixels. -t SIZE | --thumbsize=SIZE Size of thumbnails (default 160x120) -v | --verbose Verbosely print information -V | --version Print program version number -z | --compress Compress the original image if selected (default copy the image) --exif-bordercolor=COLOR Exif window border color (default #008000) --exif-bgcolor=COLOR Exif window background color (default #f0fff0) --exif-fgcolor=COLOR Exif window text color (default black) --body-bgcolor=COLOR Body background color (default #ccccff) --img-bgcolor=COLOR Image background color (default white) --exclude=PATTERN Exclude files matching PATTERN --resize-plugin=PLUG Where PLUG is the program used to create thumbnails internal: fastest method (default) gimp: use Gimp>1.x (better quality) --resize-quality-low=NUM Quality for small image. 0 (bad) and 100 (good) --resize-quality-high=NUM Quality for big image 0 (bad) and 100 (good) --gimp-program=PROG use PROG for gimp SHORTCUTS WHILE VIEWING AN IMAGE
n/SPACE Go to the next image (with the same resolution) p/BACKSPACE Go to the previous image (with the same resolution) s Start/Stop the slideshow +/- Increase/Decrease by one second the slideshow's period h Show shortcut and help i Show Exif information z Change to the higher resolution [NOT YET IMPLEMENTED] SEE ALSO
gimp(1) AUTHOR
Written by Luc Saillard, <luc@saillard.org> Main web site: http://www.saillard.org/programs_and_patches/photon/ This manual page was written by Kevin Coyner <kcoyner@debian.org> for the Debian project but may be used by others. 12/16/2006 PHOTON(1)
All times are GMT -4. The time now is 02:41 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy