Package: coreutils
Version: 9.1-1
Version: 9.4-3
Severity: normal

Dear Maintainer,

Given
        $ cat f1
        row1    f1      1
        urow1   f1      2
        $ cat f2
        row1    f2      1
        urow2   f2      2
and join(1)
        -a FILENUM
               also print unpairable lines from file FILENUM, where FILENUM is 1
               or 2, corresponding to FILE1 or FILE2
        -v FILENUM
               like -a FILENUM, but suppress joined output lines
and POSIX.1-202x/D3, XCU, join
        100437  SYNOPSIS
        100438          join [-a file_number|-v file_number] [-e string] [-o 
list] [-t char]
        100439          [-1 field] [-2 field] file1 file2

        100460  OPTIONS
        100463  −a file_number
        100464          Produce a line for each unpairable line in file 
file_number, where file_number is 1 or
        100465          2, in addition to the default output. If both −a1 and 
−a2 are specified, all unpairable
        100466          lines shall be output.
        100482  −v file_number
        100483          Instead of the default output, produce a line only for 
each unpairable line in
        100484          file_number, where file_number is 1 or 2. If both −v1 
and −v2 are specified, all
        100485          unpairable lines shall be output.
we observe:
        $ join         f?
        row1 f1 1 f2 1
        $ join -v1     f?
        urow1 f1 2
        $ join -v1 -a1 f?
        urow1 f1 2
        $ join -v1 -a2 f?
        urow1 f1 2
        urow2 f2 2

This does not conform to POSIX (should be refused);
the manual implies some sort of separate accounting for -a and -v
(and the interaxion is not described at all),
but -v 1 appears to just be -v -a1. Why?

Best,
наб

-- System Information:
Debian Release: 12.4
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 
'stable-debug'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.1.0-12-amd64 (SMP w/24 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_FIRMWARE_WORKAROUND, 
TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages coreutils depends on:
ii  libacl1      2.3.1-3
ii  libattr1     1:2.5.1-4
ii  libc6        2.36-9+deb12u4
ii  libgmp10     2:6.2.1+dfsg1-1.1
ii  libselinux1  3.4-1+b6

coreutils recommends no packages.

coreutils suggests no packages.

-- no debconf information

Attachment: signature.asc
Description: PGP signature

Reply via email to