need urgent help for writing shell script

Discussion in 'Programming/Scripts' started by dips, Aug 30, 2006.

  1. dips

    dips New Member

    Hello All ,

    I am learning Shell Script and i am very fresher . I need help to write one shell script .

    We are generating several logs files in our testsuite system . I need to generate fails as per the host ,version and productwise .

    The data is stored in different directories and run.log contains fails records with ! sign . I am extracting fails from each directory but cant't accumalte as per the product wise . because product name is stored in Master file product.dat.

    The product.dat is Master file contains 2 column
    Test Name ProductName
    /dialy/test SiCat
    /daily/yyyy YRS
    /daily/ttttt SiCat
    /daily/rttttt SiCat
    /daily/wwww PSD
    /daily/uuuu YRS



    The second file which is generated only contain fails test name for whole system .
    The data format is like this
    /users/test/krachel/9/run.log
    ! /daily/wwww
    ! /daily/test1
    ! /daily/rrrrr
    /users/test/limo/10/run.log
    ! /daily/wwww
    ! /daily/test1

    The host and version i want to extract form line /users/test/

    I have store data like this
    Host Version SiCat YRS PSD
    limo 10 3 3 5
    krache 9 5 7 0
     
  2. Ben

    Ben HowtoForge Supporter

    Due to the fact of not knowing shell scripting quite good, why do you want to do that with a shell script instead of using sth. like perl, python, php, scripting languages that exists on most *nix installations, that make tasks like this more easy.
     
  3. dips

    dips New Member

    please give me soultions in Perl . I will be thankful to you .
     
  4. dips

    dips New Member

    hope i will get help from unix & perl experts . I am waiting fr reply .
    Thanks in advance
     
  5. Ben

    Ben HowtoForge Supporter

    A solution is no help.
    But you can find all the things you need in perl here: http://perldoc.perl.org/perl.html

    Here you can find things about opening files (http://perldoc.perl.org/functions/open.html), how to cycle to its contents.
    Split (http://perldoc.perl.org/functions/split.html), subtring (http://perldoc.perl.org/functions/substr.html) will be helpfull for stringmanipulation, in that case.

    It is also helpfull to take a look at perldata (http://perldoc.perl.org/perldata.html) for datatypes you could use storing and cumulating your data read from the files.

    hth
     
  6. dips

    dips New Member

    when i will start reading and complite the program . Thanks anyway for no help .
     
  7. falko

    falko Super Moderator

    This is an essential read if you want to do shell scripting: http://www.tldp.org/LDP/abs/html/index.html
     
  8. Ben

    Ben HowtoForge Supporter

    :mad: :mad: :mad:
     
  9. drks

    drks HowtoForge Supporter


    Um, I'm not sure exactly what you need, but if you are just wanting to extract fields from a file that is easy. For example, if the file is '/users/test/file' and the contents are what you listed above then you would grab the HOST (column 1) and VERSION (column 2) this way:

    Code:
    wdierkes$ cat /users/test/file | awk {' print "HOST: "$1 "  VERSION:  "$2 '}
    HOST: limo  VERSION:  10
    HOST: krache  VERSION:  9
    

    That is just a very simple example. Please feel free to clarify if that doesn't answer your question.
     

Share This Page