shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Pedido de ajuda para gravar linhas em arquivo com Korn Shell


From: oteb_04
Subject: Re: Pedido de ajuda para gravar linhas em arquivo com Korn Shell
Date: Mon, 12 Feb 2007 13:03:04 -0000
User-agent: eGroups-EW/0.82

--- Em address@hidden, "cerajolis" <cerajolis@...>
escreveu
>
> Olá componentes do grupo, estou estudando pelo livro do Randal K.
> Michael  - Dominando Unix Shell Scripting  e estou precisando de  um
> auxílio  para  resolver  um problema  em  um   exercício que  grava
> caracteres  para  formar  linhas  em  arquivo.
> Eu consigo  criar o arquivo, porém não as linhas, por isso estou
> recorrendo ao grupo, talvez alguém já tenha executado este exercício e
> tenha a solução.
> 
> No exercício eu digitei todas as variáveis em minúsculas para não
> confundir com as variáveis de ambiente.
> E estou  utilizando o  Korn Shell
> Para executar uso o comando ./bigfile.ksh  <número_de_linhas_desejado>
>  
> Antecipadamente agradeço.
>  

 Olá

 Não conheço o ksh, mas veja as mudanças que fiz
usando o bash


#!/bin/bash
#
#set -n # verifica sintaxe
#set -x # depura Shell script


# Define Função
function usage {

echo -e "\n........USAGE ERROR....... .\n" # uso do '-e'

echo -e "\nusage: $SCRIPT_NAME number_of_80_ char_lines \n"

} # faltava fechar aqui

# Verifica o número correto de parâmetros

if [ ! $1 ] # troquei a condição
then
        usage
        exit 1 # adicionei o 1
fi


# Define arquivos e variáveis aqui

INE_LENGTH=80 
OUT_FILE=/tmp/bigfile 
> $OUT_FILE 

SCRIPT_NAME=$(basename $0) 

TOTAL_LINES=$1
#LINE_COUNT=0 # comentei essa linha, veja o for

CHAR=X # Caractere a escrever no arquivo

# inicio
for ((LINE_COUNT=0;$LINE_COUNT < $TOTAL_LINES;LINE_COUNT++ )) 
do
        for ((CHAR_COUNT=0;$CHAR_COUNT < $LINE_LENGTH;CHAR_COUNT++)) 
        do
                echo -e "${CHAR}\c " >> $OUT_FILE # '-e' e '>>'
        done

        echo " " >> $OUT_FILE # '>>'
done


 Espero que ajude.


 []
 hpfn




reply via email to

[Prev in Thread] Current Thread [Next in Thread]