./sysutils/xe, Simple xargs and apply replacement

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.0, Package name: xe-1.0, Maintainer: schmonz

`xe` is a new tool for constructing command lines from file listings or
arguments, which includes the best features of `xargs(1)` and
`apply(1)`. `xe` means "execute for every ...".

Benefits over xargs:
* Sane defaults (behaves like `xargs -d'\n' -I{} -n1 -r`).
* No weird parsing, arguments are separated linewise or by NUL byte.
* Can also take arguments from command-line.
* No shell involved unless `-s` is used.
* `{}` replacing possible with multiple arguments.
* Support for patterns to run different commands depending on the argument.

Benefits over apply:
* Parallel mode.
* Sane argument splitting.
* Can use shell-syntax instead of escape characters.


Master sites:

Filesize: 13.468 KB

Version history: (Expand)


CVS history: (Expand)


   2023-09-06 20:59:38 by Amitai Schleier | Files touched by this commit (3)
Log message:
Update to 1.0. From the changelog:

* Slightly incompatible change: properly forward errors on exec,
  return 123 on any exit status 1-254 (like GNU xargs).
* Small bugfixes.
   2022-01-23 22:37:07 by Thomas Klausner | Files touched by this commit (3)
Log message:
xe: simplify, and fix build on NetBSD
   2022-01-23 20:42:33 by Amitai Schleier | Files touched by this commit (4)
Log message:
Add xe, a simple xargs and apply replacement.

`xe` is a new tool for constructing command lines from file listings or
arguments, which includes the best features of `xargs(1)` and
`apply(1)`. `xe` means "execute for every ...".

Benefits over xargs:
* Sane defaults (behaves like `xargs -d'\n' -I{} -n1 -r`).
* No weird parsing, arguments are separated linewise or by NUL byte.
* Can also take arguments from command-line.
* No shell involved unless `-s` is used.
* `{}` replacing possible with multiple arguments.
* Support for patterns to run different commands depending on the argument.

Benefits over apply:
* Parallel mode.
* Sane argument splitting.
* Can use shell-syntax instead of escape characters.