Xargs from a file
I've struggled with xargs conceptually for long time, but actually its pretty easy conceptually. For commands that don't read from stdin but do take arguments, like echo
or kill
, you can turn newline separated values from stdin in into arguments.
Piping to echo does not work.
> echo 123 | echo
# nothing
Using xargs it does.
> echo 123 | xargs echo
123
xargs
can also read a file with the -a
flag, turning each line of the file into an argument.
> echo "123\nabc" > test.txt
> cat test.txt
123
abc
> xargs -a test.txt echo
123 abc
H/T Brian Dunn
Tweet