erlug
[Top] [All Lists]

Re: [Erlug] /var quasi saturo

To: ERlug - Lista Pubblica <erlug@xxxxxxxxxxxxxx>
Subject: Re: [Erlug] /var quasi saturo
From: Fernando Santagata <nando@xxxxxxxxx>
Date: Sun, 2 Oct 2016 11:22:24 +0200
On Sun, Oct 02, 2016 at 02:05:22AM +0200, Massimiliano Masserelli wrote:
> Il 01/10/2016 20:47, Fernando Santagata ha scritto:
> > find dir -name qualcosa -print0|xargs -0 comando
> >
> > A questo punto i nomi dei file possono contenere qualsiasi metacarattere
> > della shell, ma tanto vengono passati come flusso binario tra i due
> > processi.
> 
> Corretto ma in questo caso torni nella situazione "un processo rm 
> eseguito per ogni file da cancellare" che è marginalmente meglio di "una 
> shell che lancia rm per ogni file da cancellare" ma non poi tantissimo. 
> Se ragionevolmente non ci sono file cattivi (i cui nomi contengano 
> spazi), viene lanciato un rm per ogni "manciata" di file (quelli che ci 
> stanno nella command line massima eseguibile).

Dipende dalla "manciata": xargs ha un buffer di 64K, in cui possono
starci tranquillamente un migliaio di nomi di file.
In quel caso basta una sola invocazione della shell, contro 1000 di un
find/--exec. Su una macchina lenta fa tanta differenza.

-- 
Fernando Santagata
Jesus saves, but Buddha makes incremental backups.

<Prev in Thread] Current Thread [Next in Thread>