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

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

[shell-script] Duvida array em loop


From: address@hidden
Subject: [shell-script] Duvida array em loop
Date: Tue, 3 Feb 2015 17:03:59 -0200

Prezados,

Alguem pode me ajudar com a seguinte situação:

Tenho um arquivo de 200 linhas ou mais linhas e  preciso dividir ele em no 
maximo 50 linhas cada arquivo (no caso, estou tentando com o split)

Problemas:

Preciso colocar o arquivo inteiro (200 ou mais linhas) em um array de 50 linhas 
cada.

Por exemplo:

split -l 50 arquivo.txt (se o arquivo tiver 200 linhas, vai gerar 4 arquivos = 
xaa xab xac xad)

tem que ficar assim:

array=("linha1linha2linha3linha4linha5...linha50" 
"linha51linha52linha53linha54...linha100"  )

Alguem tem alguma ideia de como fazer isso?

split -l 50 arquivo.txt 

cat xaa > variavel
cat xab > variavel2
cat xac > variavel3
cat xad > variavel4

array=("variavel" "variavel2" "variavel3" "variavel3") 

só que não pode ser variavel, preciso do valor do arquivo, como se estivesse 
dando um echo na variavel e salvando no array

array=( "linha1linha2linha3linha4linha5...linha50" 
"linha51linha52linha53linha54...linha100"  )

Agradeço muito antecipadamente,

Carlos
>From address@hidden Tue Feb 03 13:07:31 2015
Return-Path: <address@hidden>
X-Sender: address@hidden
X-Apparently-To: address@hidden
X-Received: (qmail 30609 invoked by uid 102); 3 Feb 2015 21:07:30 -0000
X-Received: from unknown (HELO mtaq1.grp.bf1.yahoo.com) (10.193.84.32)
  by m5.grp.bf1.yahoo.com with SMTP; 3 Feb 2015 21:07:30 -0000
X-Received: (qmail 1264 invoked from network); 3 Feb 2015 21:07:30 -0000
X-Received: from unknown (HELO mail-ob0-f173.google.com) (98.138.100.119)
  by mtaq1.grp.bf1.yahoo.com with SMTP; 3 Feb 2015 21:07:30 -0000
X-Received: by mail-ob0-f173.google.com with SMTP id uy5so31404391obc.4
        for <address@hidden>; Tue, 03 Feb 2015 13:07:29 -0800 (PST)
X-Received: by 10.60.40.7 with SMTP id t7mr3189647oek.2.1422997649182; Tue, 03
 Feb 2015 13:07:29 -0800 (PST)
MIME-Version: 1.0
X-Received: by 10.202.231.17 with HTTP; Tue, 3 Feb 2015 13:06:49 -0800 (PST)
In-Reply-To: <address@hidden>
References: <address@hidden>
Date: Tue, 3 Feb 2015 19:06:49 -0200
Message-ID: <CAJ=pi6k_rWmS_XKZpaM9mt+AmPb6o0A=address@hidden>
To: "address@hidden" <address@hidden>
Content-Type: multipart/alternative; boundary9e013cbea46554ce050e357585
X-Originating-IP: 209.85.214.173
Subject: Re: [shell-script] Duvida array em loop
X-Yahoo-Group-Post: member; u"5776457; 
y=I9ddcXQ-ImoiYaokmQhOoBlmcFwgZU0vlZGqWE5ubsjekhPIBUk-
X-Yahoo-Profile: julioneves99
From: "Julio C. Neves" <address@hidden>

--089e013cbea46554ce050e357585
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Será que eu entendi? Depois do split vc pode fazer:

Ind=-1
for Arq in xa*
do
    Arr[++Ind]=\"$(tr -d '\n' < $Arq)\"
done

Acho que deve ser isso...

Abcs,
Julio
*@juliobash*
*Próximos cursos de Shell*
*Cidade         Local Período*
*Rio de Janeiro EDX <http://edx.srv.br/> 09 a 13/03/15*
*São Paulo 4Linux
<http://www.4linux.com.br/cursos/programacao-em-shell-script> 23 a 27/03/15
*
Dou treinamento de *Shell* em qualquer cidade.
Para mais detalhes, me mande um e-mail <address@hidden>.


Em 3 de fevereiro de 2015 17:03, 'address@hidden'
address@hidden [shell-script] <address@hidden>
escreveu:

>
>
> Prezados,
>
> Alguem pode me ajudar com a seguinte situação:
>
> Tenho um arquivo de 200 linhas ou mais linhas e preciso dividir ele em no
> maximo 50 linhas cada arquivo (no caso, estou tentando com o split)
>
> Problemas:
>
> Preciso colocar o arquivo inteiro (200 ou mais linhas) em um array de 50
> linhas cada.
>
> Por exemplo:
>
> split -l 50 arquivo.txt (se o arquivo tiver 200 linhas, vai gerar 4
> arquivos = xaa xab xac xad)
>
> tem que ficar assim:
>
> array=("linha1linha2linha3linha4linha5...linha50"
> "linha51linha52linha53linha54...linha100" )
>
> Alguem tem alguma ideia de como fazer isso?
>
> split -l 50 arquivo.txt
>
> cat xaa > variavel
> cat xab > variavel2
> cat xac > variavel3
> cat xad > variavel4
>
> array=("variavel" "variavel2" "variavel3" "variavel3")
>
> só que não pode ser variavel, preciso do valor do arquivo, como se
> estivesse dando um echo na variavel e salvando no array
>
> array=( "linha1linha2linha3linha4linha5...linha50"
> "linha51linha52linha53linha54...linha100" )
>
> Agradeço muito antecipadamente,
>
> Carlos
>  
>

--089e013cbea46554ce050e357585
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir="ltr"><div class="gmail_default" 
style="font-family:monospace,monospace">Será que eu entendi? Depois do split 
vc pode fazer:<br></div><div class="gmail_default" 
style="font-family:monospace,monospace"><br>Ind=-1<br>for Arq in xa*<br>do<br> 
   Arr[++Ind]=\&quot;$(tr -d &#39;\n&#39; &lt; $Arq)\&quot;<br></div><div 
class="gmail_default" 
style="font-family:monospace,monospace">done<br><br></div><div 
class="gmail_default" style="font-family:monospace,monospace">Acho que deve ser 
isso...<br></div></div><div class="gmail_extra"><br clear="all"><div><div 
class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div 
dir="ltr"><div><div dir="ltr"><div><span 
style="font-family:monospace,monospace">Abcs,</span></div><div><span 
style="font-family:monospace,monospace">Julio</span></div><div><span 
style="font-family:monospace,monospace"><b 
style="font-size:small;color:rgb(102,102,102)">@juliobash</b><font 
color="#000000"><b><span style="font-size:small"><br>P</span><font>róximos 
cursos de Shell</font></b></font></span></div><div><span 
style="font-family:monospace,monospace"><font color="#000000"><b>Cidade<span 
style="white-space:pre">  </span>        Local<span 
style="white-space:pre"> </span>Período</b></font></span></div><div><span 
style="font-family:monospace,monospace"><font color="#000000"><b>Rio de 
Janeiro<span style="white-space:pre"> </span><a href="http://edx.srv.br/"; 
target="_blank">EDX</a><span style="white-space:pre">       </span>09 a 
13/03/15</b></font></span></div><div><span 
style="font-family:monospace,monospace"><font color="#000000"><b><span 
style="white-space:pre">São Paulo        <a 
href="http://www.4linux.com.br/cursos/programacao-em-shell-script"; 
target="_blank">4Linux</a></span><span style="white-space:pre">   23 a 27/03/15 
 </span></b></font></span><img 
src="http://www.sindepolpb.com.br/novo3.gif";></div><div><span 
style="font-family:monospace,monospace"><font color="#000000">Dou treinamento 
de <i>Shell</i> em qualquer cidade.</font></span></div><div><span 
style="font-family:monospace,monospace"><font color="#000000">Para mais 
detalhes, me mande um <a href="mailto:address@hidden"; 
target="_blank">e-mail</a>.</font></span></div><div><blockquote 
style="font-family:arial;font-size:small;margin:0px 0px 0px 
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div
 text="#000000" bgcolor="#FFFFFF"><blockquote type="cite"><div 
dir="ltr"></div></blockquote></div></blockquote></div>


<p style="margin-bottom:0cm"></p><div>
<p></p></div></div></div></div></div></div></div></div></div></div>
<br><div class="gmail_quote">Em 3 de fevereiro de 2015 17:03, &#39;<a 
href="mailto:address@hidden";>address@hidden</a>&#39; <a 
href="mailto:address@hidden";>address@hidden</a> [shell-script] <span 
dir="ltr">&lt;<a href="mailto:address@hidden"; 
target="_blank">address@hidden</a>&gt;</span> escreveu:<br><blockquote 
class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc 
solid;padding-left:1ex">


<u></u>









 
<div style="background-color:#fff">
<span> </span>


<div>
  <div>


    <div>
      
      
      <p>Prezados,<br>
<br>
Alguem pode me ajudar com a seguinte situação:<br>
<br>
Tenho um arquivo de 200 linhas ou mais linhas e  preciso dividir ele em no 
maximo 50 linhas cada arquivo (no caso, estou tentando com o split)<br>
<br>
Problemas:<br>
<br>
Preciso colocar o arquivo inteiro (200 ou mais linhas) em um array de 50 linhas 
cada.<br>
<br>
Por exemplo:<br>
<br>
split -l 50 arquivo.txt (se o arquivo tiver 200 linhas, vai gerar 4 arquivos = 
xaa xab xac xad)<br>
<br>
tem que ficar assim:<br>
<br>
array=(&quot;linha1linha2linha3linha4linha5...linha50&quot; 
&quot;linha51linha52linha53linha54...linha100&quot;  )<br>
<br>
Alguem tem alguma ideia de como fazer isso?<br>
<br>
split -l 50 arquivo.txt <br>
<br>
cat xaa &gt; variavel<br>
cat xab &gt; variavel2<br>
cat xac &gt; variavel3<br>
cat xad &gt; variavel4<br>
<br>
array=(&quot;variavel&quot; &quot;variavel2&quot; &quot;variavel3&quot; 
&quot;variavel3&quot;) <br>
<br>
só que não pode ser variavel, preciso do valor do arquivo, como se estivesse 
dando um echo na variavel e salvando no array<br>
<br>
array=( &quot;linha1linha2linha3linha4linha5...linha50&quot; 
&quot;linha51linha52linha53linha54...linha100&quot;  )<br>
<br>
Agradeço muito antecipadamente,<br>
<br>
Carlos</p>

    </div>
     

    
    <div style="color:#fff;min-height:0"></div>


</div>



  






</blockquote></div><br></div>

--089e013cbea46554ce050e357585--


reply via email to

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