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...

#!/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

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

```text
 and 
```

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?

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,:slight_smile: very grateful for the attention

Please, can you explain the logic of the function Ordenar_Dados

Jean-Pierre.