From 6e5044eb4ba064a497699208068d2553ac172f8c Mon Sep 17 00:00:00 2001 From: johannst Date: Sun, 17 Nov 2024 21:19:48 +0000 Subject: deploy: deb4619a79deace26923e91a93b6d7bbfce40e78 --- cli/xargs.html | 227 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 227 insertions(+) create mode 100644 cli/xargs.html (limited to 'cli/xargs.html') diff --git a/cli/xargs.html b/cli/xargs.html new file mode 100644 index 0000000..fd14038 --- /dev/null +++ b/cli/xargs.html @@ -0,0 +1,227 @@ + + + + + + xargs - Notes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

xargs(1)

+
xargs [opts] [cmd [init-args]]
+    -l [<num>]   maximal number of lines per cmd invocation
+                 if <num> it not provided, num=1 is assumed
+    -I <str>     replace <str> in the [init-args] with the arg;
+                 this implies -l, and hence processes one arg at a time
+
+

Example

+

Collect arguments and prefix them with another option.

+
# Using -l to process one arg at a time.
+eval strace -f (find /dev -name 'std*' | xargs -l echo -P | xargs) ls
+
+# Using -I to place the arg at the specified location.
+eval strace -f (find /dev -name 'std*' | xargs -I {} echo -P {}) ls
+
+# Both commands achieve the same thing and result in something like:
+#   eval strace -f -P /dev/stdin -P /dev/stdout -P /dev/stderr ls
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + -- cgit v1.2.3