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

Re: [bash] - Catturare STDIN



>  #!/bin/bash
>  INPUT=$1
>  echo $INPUT
>
>  quindi
>
>  ~$ ./script ciao
>  ciao
>
>  ma se io volessi instanziare lo script cosi':
>
>  echo ciao | script
>

Semplicemente:
----------------------------
#! /bin/sh

read INPUT
echo "INPUT=$INPUT"
----------------------------

Se invece decidessi di fare
cat file_con_piu_linee.txt | script
allora dovresti usare:
----------------------------
#! /bin/sh

I=0
J=0
# Leggi lo stdin riga per riga!
while read INPUT
do
           ARG[$I]=$INPUT
           I=`expr $I + 1`
done

while [ $J -lt $I ]
do
           echo "ARG[$J]=${ARG[$J]}"
           J=`expr $J + 1`
done
------------------------

>  come faccio a catturare lo STDIN di echo e passarlo a script?

In realtà questa tua domanda è posta male (non voglio fare il
professore, ma visto che è una cosa concettuale preferisco chiarila).
In realtà tu devi cattuare lo STDOUT dell'echo che viene rediretto
nello STDIN della shell con cui viene interpretato il tuo script...
non so se mi spiego... scusa la pignoleria!

    Ciao

          Paolo

--
Paolo Larcheri
Linux User   #383461
http://counter.li.org



Reply to: