Su AIX (ma questo accade anche su HP-UX), ho GNU ls nel mio percorso ed è anche alias ls
.
Quando uso xargs, usa invece lo standard Unix ls
invece dell'alias.
Ad esempio ( flocate
è una funzione che trova il percorso esatto dell'oggetto di ricerca):
flocate mirrorvg | xargs ls -lh
ls: illegal option -- h
usage: ls [-1ACFHLNRSabcdefgiklmnopqrstuxEUX] [File...]
ls -lh /usr/sbin/mirrorvg
-r-xr-x--- 1 root system 37K apr 3 2014 /usr/sbin/mirrorvg*
Perché xargs non usa l' ls
alias?
ls
eseguibile GNU nella$PATH
variabile di ambiente e precede la directory (probabilmente/bin
) che contiene ills
comando non GNU ? Aggiorna la tua domanda per mostrarci il valore reale del tuo$PATH
.xargs
eseguirà il primols
comando che trova in una directory nella tua$PATH
; non conosce gli alias.