No AIX (mas isso também acontece no HP-UX), tenho o GNU ls no meu caminho e também é alias como ls
.
Quando uso xargs, ele usa o Unix padrão em ls
vez do alias.
Por exemplo ( flocate
é uma função que encontra o caminho exato do assunto da pesquisa):
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*
Por que o xargs não usa o ls
alias?
ls
executável em sua$PATH
variável de ambiente e precede o diretório (provavelmente/bin
) que contém ols
comando não-GNU ? Atualize sua pergunta para nos mostrar o valor real do seu$PATH
.xargs
executará o primeirols
comando encontrado em um diretório no seu$PATH
; não conhece aliases.