Visit Our UNIX and Linux User Community


Shell Script (help me)


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Shell Script (help me)
# 1  
Old 10-22-2009
Shell Script (help me)

Hello!!!

I am doing a project, and i need help, so i would stay very apreciate if anybody help me... sorry for my english.

the project is, havind a .txt and i want to convert it for pdf, so i would like that u help me...
Code:
#!/bin/sh

OLDIFS=$IFS
IFS='
'


File_Out()
{
  for LINHAS in `cat fdados2.txt`
  do
      CURSO=`echo $LINHAS | cut -d'|' -f2`
      LOGIN=`echo $LINHAS | cut -d'|' -f3`
      PPASSE=`echo $LINHAS | cut -d'|' -f4`
      NUMERO=`echo $LINHAS | cut -d'|' -f5`
      NOME=`echo $LINHAS | cut -d'|' -f6`

      printf "________________________________________________________" >> fPronto.txt
      printf " \n\n | CURSO:%s  NUMERO:%s \n | LOGIN:%s  PPASSE:%s \n | NOME:%s\n" $CURSO $NUMERO $LOGIN $PPASSE $NOME >> fPronto.txt

  done
}


Conteudo_Linhas()
{
  N_LINHAS=$(cat fdados1.txt | wc -l )
  echo " $N_LINHAS Linhas";
}



Dados_Aleatorios()
{
  
  for LINHAS in `cat novo.txt`
  do
  
      NUM=`echo $LINHAS | cut -d'|' -f5`
      printf "\n %s"$NUM >>  novo1.txt
    
  done
}



Ordenar_Dados()              #Esta funcao funciona pq o ficheiro de dados e pequeno, atraves de um ciclo de i(numero de linhas)vezes#
{                         # podiamos ordener qualquer ficheiro de dados #
  J=0
  K=0
  for LINHAS in `cat novo1.txt`
  do
      
      N=`echo $LINHAS`
      if test $N -gt $K
         then
            if test $J -eq 0
               then
                J=$K
                K=$N 
               else
                printf "\n %s"$N >> novo2.txt   
            fi   
         else
            if test $N -gt $J
               then
                  printf "\n %s"$J >> novo2.txt
                  J=$N
               else
                  printf "\n %s"$N >> novo2.txt                    
            fi  
      fi

  done            
  printf "\n %s"$K >> novo2.txt
  printf "\n %s"$J >> novo2.txt
  J=0
  K=0    
}                   


File_End()
{                    
  for LINHAS in `cat novo2.txt`
  do
      L=`echo $LINHAS`
      for LINHAS in `cat novo.txt`
      do
          LIN=`echo $LINHAS`
          LN=`echo $LINHAS | cut -d'|' -f5`
          if test $L -eq $LN
             then
              printf "\n %s"$LIN >> fdados2.txt
          fi
      done
  done
}          
  
##### PRINCIPAL #######################################

OLDIFS=$IFS
IFS='
'

echo " Digite o nome do ficheiro"
read file

if [ -s $file ]
   then

    i=0;

    for LINHAS in `cat $file`
    do
        i=$(expr $i + 1)
    done

    h=$(expr $i - 3) 
    T=`tail --lines=$h $file`
    echo "$T" >> novo.txt
    
    Dados_Aleatorios $novo.txt 
    
    Ordenar_Dados $novo1.txt
    rm novo1.txt    
    File_End $novo2.txt $novo.txt     
    rm novo.txt
    rm novo2.txt
    File_Out $fdados2.txt   
    rm fdados2.txt
  
    a2ps --columns=2 --output=Pronto.ps --sides=simplex fPronto.txt
    rm fPronto.txt
    ps2pdf Pronto.ps
    rm Pronto.ps
   else
    echo "$file : Erro: ficheiro nao existe ou nao especificado"
fi

tks.. to every one

Last edited by pludi; 10-22-2009 at 02:32 PM.. Reason: code tags please
# 2  
Old 10-22-2009
Hello,

Per our forum rules, all threads must have a descriptive subject text. For example, do not post questions with subjects like "Help Me!", "Urgent!!" or "Doubt". Post subjects like "Execution Problems with Cron" or "Help with Backup Shell Script".

The reason for this is that nearly 95% of all visitors to this site come here because they are referred by a search engine. In order for future searches on your post (with answers) to work well, the subject field must be something useful and related to the problem!

In addition, current forum users who are kind enough to answer questions should be able to understand the essence of your query at first glance.

So, as a benefit and courtesy to current and future knowledge seekers, please be careful with your subject text. You might receive a forum infraction if you don't pay attention to this.

Thank you.

The UNIX and Linux Forums

---------- Post updated at 18:33 ---------- Previous update was at 18:33 ----------

To keep the forums high quality for all users, please take the time to format your posts correctly.

First of all, use Code Tags when you post any code or data samples so others can easily read your code. You can easily do this by highlighting your code and then clicking on the # in the editing menu. (You can also type code tags [code] and [/code] by hand.)

Second, avoid adding color or different fonts and font size to your posts. Selective use of color to highlight a single word or phrase can be useful at times, but using color, in general, makes the forums harder to read, especially bright colors like red.

Third, be careful when you cut-and-paste, edit any odd characters and make sure all links are working property.

Thank You.

The UNIX and Linux Forums

---------- Post updated at 18:34 ---------- Previous update was at 18:33 ----------

Could you also tell us what exactly your problem is?
# 3  
Old 11-04-2009
Bug mesmo problema

pludi hello!

I have a problem very similar to the xeco and asked a lot for your help. The problem and the next have to create a shell script that is capable of receiving information from a text file containing information about the course, discipline, no student's name, user name and password and turns it into a file pdf containing the input data as a business to provide students. We suggest the use of commands a2ps and ps2pdf. I have a text file through which I enter data and then command them in another.

xeco the script is in the right direction already ran and the console says that the error in the 6th line, but not with that - and the error in the 7th row - says it's a syntax error, is one of the unexpected.

very grateful for your help on the site, please I'm desperate with this, I have to have it done for Friday, and I can not resolve the errors that I appear in this program.

help me please, I am now,Smilie very grateful for the attention

Last edited by hitomii; 11-05-2009 at 10:52 AM..
# 4  
Old 11-23-2009
Quote:
Originally Posted by xeco
Hello!!!

I am doing a project, and i need help, so i would stay very apreciate if anybody help me... sorry for my english.

the project is, havind a .txt and i want to convert it for pdf, so i would like that u help me...
Code:
#!/bin/sh

OLDIFS=$IFS
IFS='
'


File_Out()
{
  for LINHAS in `cat fdados2.txt`
  do
      CURSO=`echo $LINHAS | cut -d'|' -f2`
      LOGIN=`echo $LINHAS | cut -d'|' -f3`
      PPASSE=`echo $LINHAS | cut -d'|' -f4`
      NUMERO=`echo $LINHAS | cut -d'|' -f5`
      NOME=`echo $LINHAS | cut -d'|' -f6`

      printf "________________________________________________________" >> fPronto.txt
      printf " \n\n | CURSO:%s  NUMERO:%s \n | LOGIN:%s  PPASSE:%s \n | NOME:%s\n" $CURSO $NUMERO $LOGIN $PPASSE $NOME >> fPronto.txt

  done
}


Conteudo_Linhas()
{
  N_LINHAS=$(cat fdados1.txt | wc -l )
  echo " $N_LINHAS Linhas";
}



Dados_Aleatorios()
{
  
  for LINHAS in `cat novo.txt`
  do
  
      NUM=`echo $LINHAS | cut -d'|' -f5`
      printf "\n %s"$NUM >>  novo1.txt
    
  done
}



Ordenar_Dados()              #Esta funcao funciona pq o ficheiro de dados e pequeno, atraves de um ciclo de i(numero de linhas)vezes#
{                         # podiamos ordener qualquer ficheiro de dados #
  J=0
  K=0
  for LINHAS in `cat novo1.txt`
  do
      
      N=`echo $LINHAS`
      if test $N -gt $K
         then
            if test $J -eq 0
               then
                J=$K
                K=$N 
               else
                printf "\n %s"$N >> novo2.txt   
            fi   
         else
            if test $N -gt $J
               then
                  printf "\n %s"$J >> novo2.txt
                  J=$N
               else
                  printf "\n %s"$N >> novo2.txt                    
            fi  
      fi

  done            
  printf "\n %s"$K >> novo2.txt
  printf "\n %s"$J >> novo2.txt
  J=0
  K=0    
}                   


File_End()
{                    
  for LINHAS in `cat novo2.txt`
  do
      L=`echo $LINHAS`
      for LINHAS in `cat novo.txt`
      do
          LIN=`echo $LINHAS`
          LN=`echo $LINHAS | cut -d'|' -f5`
          if test $L -eq $LN
             then
              printf "\n %s"$LIN >> fdados2.txt
          fi
      done
  done
}          
  
##### PRINCIPAL #######################################

OLDIFS=$IFS
IFS='
'

echo " Digite o nome do ficheiro"
read file

if [ -s $file ]
   then

    i=0;

    for LINHAS in `cat $file`
    do
        i=$(expr $i + 1)
    done

    h=$(expr $i - 3) 
    T=`tail --lines=$h $file`
    echo "$T" >> novo.txt
    
    Dados_Aleatorios $novo.txt 
    
    Ordenar_Dados $novo1.txt
    rm novo1.txt    
    File_End $novo2.txt $novo.txt     
    rm novo.txt
    rm novo2.txt
    File_Out $fdados2.txt   
    rm fdados2.txt
  
    a2ps --columns=2 --output=Pronto.ps --sides=simplex fPronto.txt
    rm fPronto.txt
    ps2pdf Pronto.ps
    rm Pronto.ps
   else
    echo "$file : Erro: ficheiro nao existe ou nao especificado"
fi

tks.. to every one
Please, can you explain the logic of the function Ordenar_Dados

Jean-Pierre.

Previous Thread | Next Thread
Test Your Knowledge in Computers #184
Difficulty: Easy
Less than 4% of those surveyed at UNIX.com indicated that csh was their most useful shell.
True or False?

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Shell script newbie- how to generate service log from shell script

Hi, I am totally a newbie to any programming languages and I just started an entry level job in an IT company. One of my recent tasks is to create a script that is able to show the log file of linux service (i.e. ntpd service) lets say, if I run my script ./test.sh, the output should be... (3 Replies)
Discussion started by: xiaogeji
3 Replies

2. Shell Programming and Scripting

Pass C shell array to another C shell script(csh) and shell(sh)

Dear Friends, Please help me on this my script name is send.csh In this i have written the statement like this set args = ( city state country price ) I want to pass this array to another c shell called receiver.csh. and i want to use it in this c shell or how to pass to... (2 Replies)
Discussion started by: SA_Palani
2 Replies

3. Shell Programming and Scripting

How to write config shell script to pass variables in master shell script?

Dear Unix gurus, We have a config shell script file which has 30 variables which needs to be passed to master unix shell script that invokes oracle database sessions. So those 30 variables need to go through the database sessions (They are inputs) via a shell script. one of the variable name... (1 Reply)
Discussion started by: dba1981
1 Replies

4. UNIX for Dummies Questions & Answers

How to write Config shell script to pass variables in master shell script?

Dear Unix gurus, We have a config shell script file which has 30 variables which needs to be passed to master unix shell script that invokes oracle database sessions. So those 30 variables need to go through the database sessions (They are inputs) via a shell script. one of the variable name... (1 Reply)
Discussion started by: dba1981
1 Replies

5. Shell Programming and Scripting

Unable to pass shell script variable to awk command in same shell script

I have a shell script (.sh) and I want to pass a parameter value to the awk command but I am getting exception, please assist. diff=$1$2.diff id=$2 new=new_$diff echo "My id is $1" echo "I want to sync for user account $id" ##awk command I am using is as below cat $diff | awk... (2 Replies)
Discussion started by: Ashunayak
2 Replies

6. Shell Programming and Scripting

Correct shell script to Call One shell script from another shell script

Hi All, I have new for shell scripting. Problem : I have one scrip at serv1 and path of server is /apps/dev/provimage/scripts and script name:extract_ancillary.bat. I need to call this script at server2(my working server) and execute at server2 . Please let me know how to build the... (5 Replies)
Discussion started by: Vineeta Nigam
5 Replies

7. Shell Programming and Scripting

call another shell script and pass parameters to that shell script

Hi, I basically have 2 shell scripts. One is a shell script will get the variable value from the user. The variable is nothing but the IP of the remote system. Another shell script is a script that does the job of connecting to the remote system using ssh. This uses a expect utility in turn. ... (2 Replies)
Discussion started by: sunrexstar
2 Replies

8. Shell Programming and Scripting

How to use ssh execute other shell script on other host (shell script include nohup)?

i want use ssh on the host01 to execute autoexec.sh on the host02 like following : host01> ssh host02 autoexec.sh autoexec.sh include nohup command like follwing : nohup /home/jack/deletedata.sh & after i execute ssh host02 autoexec.sh one the host01. i can't found deletedata.sh... (1 Reply)
Discussion started by: orablue
1 Replies

9. Shell Programming and Scripting

invoking a shell script inside cgi shell script

Hi, I have an HTML form through which I get some text as input. i need to run a shell script say script.sh inside a perl-cgi script named main_cgi.sh on the form input. I want to write the contents of the form in a file and then perform some command line operations like grep, cat on the text... (2 Replies)
Discussion started by: smriti_shridhar
2 Replies

10. Shell Programming and Scripting

How to Run a shell script from Perl script in Parent shell?

Hi Perl/UNIX experts, I have a problem in running a shell script from my perl script (auto.pl). I run the perl script using perl auto.pl from the shell prompt The shell script picks the files in "input" folder and procesess it. The shell script blue.sh has this code. export... (16 Replies)
Discussion started by: hifake
16 Replies

Featured Tech Videos