LINUX.ORG.RU

Устал копипастить sed-скрипт

 ,


0

1

Вот обыкновенная программа просто сваливает список файлов в файл и чтобы sh-утиль спокойна файлы по списку подхватывал нужно проделывать кучку экранирования:

cat ../SIZES |../../utils/filter_size.py \<5M|sed -e '/^$/d'  -e 's/\\/\\\\/g' -e 's/"/\\"/g' -e "s/'/\\\\'/g" |xargs -I {} cp --parents '{}' ../r/

Чем бы вот эту команду с sed-ом заменить чем-нибудь по-лаконичнее?

★★★★★

Чем бы вот эту команду с sed-ом заменить чем-нибудь по-лаконичнее?

Не факт, что будет лаконичнее, но printf %q "$arg" для экранирования может быть более универсальным вариантом.

xaizek ★★★★★ ()

Кошмар какой. Это экранирование точно необходимо? Ведь xargs передает аргументы как есть, не раскрывая ничего.

Ну и отобрать файлы по размеру можно через find, по произвольному критерию через find -exec тест {} \;

legolegs ★★★★★ ()