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

Re: Problema con los comandos del bash



On Mon, Jul 27, 2009 at 07:38:28PM +0200, Gorka wrote:
> Quiero mover los mails que contengan cierta palabra a otra carpeta. Para
> ello he llegado hasta el siguiente comando, 
> 
> grep ***SPAM*** * | sed 's/miservidor.*$//'
> 
> Que me da los emails que yo quiero. Sólo me faltaría completar los nombres
> de los mails con * y hacer el mv, pero no sé cómo hacerlo en una única
> línea, porque si hago,
> 
> mv (grep ***SPAM*** * | sed 's/miservidor.*$//')* ../spam/
> 
> Me da error.
> También he pensado en un script tipo:
> 
> #!/bin/bash
> for i in grep $1 *;
> do sed 's/miservidor.*$//' $i |  mv $i ../spam;
> done
> 

  Mi consejo es que leas pex, la ABS-guide.
   
   apt-get install abs-guide

  Ahora.. yo lo haría con un script.. que llevase algo como esto:

,----
|   for i in $(ls); do
|   
|     cat $i | grep "***SPAM***" > /dev/null
| 
|     if (( $(echo $?) == 0)); then
| 
|        mv $i $DESTINO
|     fi 
| 
|   done  
`----

  Pero vamos, es una idea.. funcional, aunque no la más correcta.. y
  se puede hacer mucho mejor .. etc.

  Espero le sirva como idea, y lea la doc...



> Al que se le pase ?***SPAM***? como parámetro, pero no doy con la forma
> correcta de hacerlo. Me da error también.
> 
> Una ayudita, por favor.
> 
> 

-- 
Porqué loitar e matar, se podes amar e sonhar

/"\
\ /  CAMPANHA DA FITA ASCII - CONTRA MAIL HTML
 X   ASCII RIBBON CAMPAIGN - AGAINST HTML MAIL
/ \


Reply to: