Всем привет,
Задался тут вопросом в каком порядке xargs передает аргументы на исполнение, обнаружил интересную штуку...
Пример:
Дан каталог с файлами и папками где 2 3 и 7 папки, остальное каталоги:
$ ls
1 10 2 3 4 5 6 7 8 9
$ ls -la
total 20
drwxr-xr-x 5 alexeyk sudo 4096 2010-05-13 13:14 .
drwxr-xr-x 12 alexeyk alexeyk 4096 2010-05-13 13:13 ..
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:13 1
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 10
drwxr-xr-x 2 alexeyk sudo 4096 2010-05-13 13:13 2
drwxr-xr-x 2 alexeyk sudo 4096 2010-05-13 13:13 3
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:13 4
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 5
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 6
drwxr-xr-x 2 alexeyk sudo 4096 2010-05-13 13:13 7
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 8
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 9
Теперь исользуем xarg для передачи аргументов используя -t для трассировки того что мы передаем:
/testdir$ ls |xargs -t ls -la
ls -la 1 10 2 3 4 5 6 7 8 9
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:13 1
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 10
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:13 4
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 5
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 6
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 8
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 9
2:
total 8
drwxr-xr-x 2 alexeyk sudo 4096 2010-05-13 13:13 .
drwxr-xr-x 5 alexeyk sudo 4096 2010-05-13 13:14 ..
3:
total 8
drwxr-xr-x 2 alexeyk sudo 4096 2010-05-13 13:13 .
drwxr-xr-x 5 alexeyk sudo 4096 2010-05-13 13:14 ..
7:
total 8
drwxr-xr-x 2 alexeyk sudo 4096 2010-05-13 13:13 .
drwxr-xr-x 5 alexeyk sudo 4096 2010-05-13 13:14 ..
Вопрос ) Почему папки оказываются в конце? Ответ был найден довольно быстро, оказывается так работает ls -la
проверяем:
$ ls -la 1 10 2 3 4 5 6 7 8 9
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:13 1
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 10
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:13 4
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 5
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 6
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 8
-rw-r--r-- 1 alexeyk sudo 0 2010-05-13 13:14 9
2:
total 8
drwxr-xr-x 2 alexeyk sudo 4096 2010-05-13 13:13 .
drwxr-xr-x 5 alexeyk sudo 4096 2010-05-13 13:14 ..
3:
total 8
drwxr-xr-x 2 alexeyk sudo 4096 2010-05-13 13:13 .
drwxr-xr-x 5 alexeyk sudo 4096 2010-05-13 13:14 ..
7:
total 8
drwxr-xr-x 2 alexeyk sudo 4096 2010-05-13 13:13 .
drwxr-xr-x 5 alexeyk sudo 4096 2010-05-13 13:14 ..
Теперь остается другой вопрос как заставить xargs передавать аргументы по порядку? чтоб ls не смог сделать вывод в удобном ЕМУ формате 

man честно читал есть ключ -i но это не то.