LINUX.ORG.RU

xargs и передача параметров


0

0
Как можно xargs заставить передавать параметры по одному. Делаю так:

find . | xargs awk -f script.awk

В директории примерно 18000 файлов. Нужно для каждого выполнить script.awk, а xargs передает сразу около 1000 имен файлов на вход awk и ничего не работает.

И еще: если сделать mv * /tmp , то он ругается на то, что слишком много файлов (слишком длинная командная строка). Я знаю, что их много, но мне ведь нужно с ними работать. А так ведут себя почти все комманды.

★★★★
find . -exec awk -f script.awk {} \;
sdio ★★★★★
()
> В директории примерно 18000 файлов. Нужно для каждого выполнить script.awk, а xargs передает сразу около 1000 имен файлов на вход awk и ничего не работает.

Лучше перепиши скрипт, чтобы он мог обработать эту 1000 имен.

> И еще: если сделать mv * /tmp , то он ругается на то, что слишком много файлов

find | xargs -r mv --target-directory=DIR

amm ★★
()
> И еще: если сделать mv * /tmp , то
как выполнить скрипт для отдельного файла тебе уже сказали, так вот
почему бы не копировать файлы прямо в этом скрипте
aton
()
мона еще сделать через sh..
for file in `ls -f`
do
# Awk stuff for $file
done
godexsoft
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.