Из ответов на этот вопрос я узнал: Заставить xargs работать в Cygwin эту опцию xargs -I не работает должным образом под Cygwin. Были некоторые обходные пути, но, к сожалению, в моем случае это не помогает.
Мой вопрос в том, как я могу приблизиться к тому же результату, что и:
..somthing that produces multiple lines.. | xargs -I % command -option1 % -option2 %
в среде Cygwin?
Изменить:
Чтобы уточнить, я хотел бы получить некоторые значения из стандартного ввода и вызвать «команду», поместив их в два места в качестве аргументов «%». Я хотел бы несколько раз вызывать свою команду для данных, созданных «чем-то».
Пример 1: (я давно не программировал на cpp, так что простите меня за ошибки)
find -name *.cpp | cut -d. -f1 | xargs -I % gcc -o %.o -I %.h %.cpp
Пример 2:
cat songs_to_process.txt | xargs -I % convert --format=mp3 --source=%.avi --output=%.mp3
xargs
действительно от Cygwin?xargs --version
дает вам что-нибудь полезное? Показывает лиtype xargs
, что он исходит из того же каталога, где, скажем,type find
говорит, что находится двоичный файлfind
? - person Charles Duffy   schedule 17.12.2017xargs -I
является обязательным для POSIX-совместимой реализации, так что это не похоже на у другого/старого Cygwinxargs
этого не было бы. - person Charles Duffy   schedule 17.12.2017xargs --version
читает: Упаковано Cygwin (4.6.0-1)type xargs
иwhich xargs
дает: (/usr/bin/xargs) - person mpasko256   schedule 17.12.2017