wrote CLI in C++ to sort files. it's very simple, just download and use. if you a photographer, video editor or just need to sort some files, you welcome (link in post)

you are viewing a single comment's thread
view the rest of the comments
[–] 8 points 3 months ago (2 children)

ls can be piped safely if you use --zero:

ls --zero *.txt | xargs --null -I {} mv {} /home/user/Documents

While the above is a pretty silly example, one reason why you might want to do this is that xargs has a -P/--max-procs argument, that runs N commands in parallel. So you could do something like the following to gzip four files in parallel:

ls --zero *.txt | xargs --null -n1 -P4 gzip

This is a bit simpler than using the equivalent

find . -maxdepth 1 -name '*.txt' -print0 | xargs --null -n1 -P4 gzip
  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 3 months ago (1 child)

    While the later is more reliably available. Use this in scripts you distribute. And also finds -exec instead of |xargs.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 2 points 3 months ago

    Both find and xargs are POSIX commands, so there's something wrong with your OS if you are missing either, and find does not have an equivalent of -P. Granted, -P is an extension, but it is supported by GNU's, OpenBSD's, FreeBSD's, and BusyBox's xargs commands, and probably also by others, so it is reasonable to assume that it is available unless you are targeting some obscure OS

  • source
  • parent