The stable version of GNU Coreutils 9.12, a suite of basic system utilities, is now available. It includes sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, and ls.
Key innovations:
- The env utility now has the "--env0-from=FILE" option for loading a list of environment variables to set from a file. This option can also be used to filter existing environment variables with a command like "env -i --env0-from=<( env -0 | sed -z … )". The printenv utility can be used to save the state of environment variables to a file.
The 'env', 'printenv', 'stat', 'basename', 'dirname', 'du', 'readlink', and 'realpath' commands now use escaped special characters when output to the terminal, matching the style specified by the QUOTING_STYLE environment variable (%N, %Qn, or %n). This escaping was added to protect against manipulation of the terminal contents and state through special character substitution.
- The 'df', 'du', 'ls', 'od', 'pr' and 'sort' utilities now escape problematic options in error messages.
- The 'ls -m' command now escapes commas in file names.
- The 'chcon', 'chgrp', 'chmod', 'chown', 'du' and 'ls' utilities no longer fail when performing recursive operations using the "-R" option if there are parallel file deletions in the directories being processed.
- The sort utility has been optimized for memory consumption and parallel operations when reading data whose size is not known in advance, for example when transferring data through unnamed pipes.
- The start-of-line detection in the 'cut -w' command has been optimized, increasing throughput by up to 4 times when using locales with multi-byte encodings.
- The 'uniq -c' command has been speeded up to 2.5 times on systems with stdio functions without blocking.
- Added build option '--with-wtmpdb' which, when running the commands 'who /var/log/wtmp' and 'users /var/log/wtmp', uses a database in wtmpdb format instead of the file /var/log/wtmp.
Source: opennet.ru
