Re: bash pipe ed altro
> Ciao a tutti, non capisco perche' non funziona il comando:
>
> find . -user bartola | chown pippo *
Il comando chown non legge lo standard input; legge invece
gli argomenti passatigli in linea di comando. Che sono due cose diverse.
Allo stesso modo, insomma
ls pip* | rm
non funziona.
Puoi fare quello che desideri usando "xargs"
Per esempio:
ls pip* | xargs rm
ls *.zip | xargs -n 1 unzip
oppure
find . -user bartola | xargs -n 1 chown pippo *
xargs --help
per saperne di piu'.
> ne'
> find . -user bartola < chown pippo *
> che vorrei usare per modificare l'user di tutti i file di bartola in
> file di pippo.
>
> inoltre come posso rinominare i file che contengono una stringa nel nome
> in file che ne contengono un'altra fermo restando gli altri caratteri?
> una cosa tipo
>
> mv *ABC* *DEFGHJ*
devi fare uno scriptino bash: per esempio apri un editor e ci scrivi:
#######
for i in `ls *ABC*`
do
NEW_N=`echo $i |sed -e 's/ABC/EFGH/'`
echo $NEW_N
cp $i $NEW_N
done
#########
poi fai cut&paste sulla bash.
puoi trasformare questo in uno script bash degno di questo nome,
con un pochino d'impegno in piu'. Ti consiglio assolutamente di
consultare http://www.tldp.org/LDP/abs/html/index.html
Ciao
Reply to: