paste(1) on Solnix vs Linux and the BSDs

On Solnix, paste is the illumos paste at /usr/bin/paste. It has the same -d and -s options as the BSDs. The main difference for Linux users is that GNU paste's -z (NUL-terminated lines) is not documented. The main difference for BSD users is that unknown backslash escapes in the -d list are unspecified on Solnix, but mean the literal character on the BSDs.

What Solnix runs

A default Solnix system runs the illumos paste at /usr/bin/paste. No other variants are shipped.

Differences

Compared withTopicWhat differs
Linux-z NUL-terminated linesLinux paste -z treats NUL, not newline, as the line delimiter. The Solnix page documents only -d and -s, so it does not say that -z is supported.
Source: Linux paste(1) -z, --zero-terminated; Solnix paste(1) SYNOPSIS and OPTIONS
Linuxlong options and --help/--versionLinux paste accepts --delimiters, --serial, --help and --version. The Solnix page documents only the short options -d and -s, and no --help or --version.
Source: Linux paste(1) -d, --delimiters; -s, --serial; --help; --version; Solnix paste(1) SYNOPSIS
FreeBSD, OpenBSD, NetBSDunknown backslash escapes in -d listOn Solnix, a backslash followed by any character other than n, t, \ or 0 gives unspecified results. FreeBSD, OpenBSD and NetBSD say such a character is equivalent to the character itself.
Source: Solnix paste(1) -d ("If any other characters follow the backslash, the results are unspecified"); FreeBSD/OpenBSD/NetBSD paste(1) -d ("Any other character preceded by a backslash is equivalent to the character itself")
FreeBSD, OpenBSD, NetBSD\0 followed by x, X or a digitSolnix says that if \0 is immediately followed by x, X or an LC_CTYPE digit character, the results are unspecified. The BSD pages give no such caveat.
Source: Solnix paste(1) -d (\0); FreeBSD/OpenBSD/NetBSD paste(1) -d (\0)
Linuxbackslash escapes in -d listLinux says only that backslash escapes are supported in the -d list. It does not list which ones. Solnix lists \n, \t, \\ and \0 and leaves all others unspecified.
Source: Linux paste(1) -d, --delimiters; Solnix paste(1) -d
all fourstdin operandSolnix, FreeBSD, OpenBSD and NetBSD say that `-` as a file operand reads standard input, one line at a time, circularly for each `-`. Linux says that with no FILE, or when FILE is `-`, paste reads standard input. Only Linux documents the no-operand case. Solnix and the BSDs list file as required in the synopsis.
Source: Solnix paste(1) SYNOPSIS, OPERANDS; Linux paste(1) DESCRIPTION; FreeBSD/OpenBSD/NetBSD paste(1) DESCRIPTION
FreeBSD, OpenBSD, NetBSDminimum number of filesThe Solnix page states that implementations support pasting at least 12 file operands. The BSD pages state no such minimum.
Source: Solnix paste(1) OPERANDS; FreeBSD/OpenBSD/NetBSD paste(1) DESCRIPTION
FreeBSD, OpenBSD, NetBSDenvironment and large filesThe Solnix page lists LANG, LC_ALL, LC_CTYPE, LC_MESSAGES and NLSPATH as affecting paste and refers to largefile(7) for files of 2 Gbyte or more. The FreeBSD, OpenBSD and NetBSD pages have no environment or large-file section.
Source: Solnix paste(1) ENVIRONMENT VARIABLES, USAGE; FreeBSD/OpenBSD/NetBSD paste(1)

Standards

  • POSIX: paste is a POSIX.1-2024 utility.
  • Solnix: Interface Stability: Standard. CSI: Enabled.
  • FreeBSD: The paste utility is expected to be IEEE Std 1003.2 (“POSIX.2”) compatible.
  • OpenBSD: The paste utility is compliant with the IEEE Std 1003.1-2008 (“POSIX.1”) specification.
  • NetBSD: The paste utility is expected to be IEEE Std 1003.2 (“POSIX.2”) compatible.

Writing portable scripts

  • Use only -d and -s, and only the escapes \n, \t, \\ and \0 in the -d list. Other backslash sequences are unspecified on Solnix and mean the literal character on the BSDs.
  • Do not rely on -z. Only the Linux page documents it. Pass `-` explicitly to read standard input instead of relying on an empty operand list.

Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.