UNIX, POSIX et SUS : références et à‑propos

Auteur Message
La commande mktemp ne figure pas dans POSIX, elle n’y existe que comme fonction C définie dans stdlib.h.
Il n’est pas généralement possible de consulter les pages de manuels POSIX (seulement les pages de manuels pour des variantes pas toujours conformes), mais elles peuvent être consultées sur le site de l’OpenGroup : Utilities (opengroup.org). Certaines de ces commandes sont généralement implémentées par le shell, c’est le cas de alias et read, entre autres. En parlant du shell, les pages de manuels des commandes spéciales du shell, sont incluses dans la dernière section de la spécification du langage du shell : 2. Shell Command Language — 2.14. Special Built-In Utilities (opengroup.org).
La commande sed de POSIX, ne supporte que les expressions régulières basiques (BRE), contrairement à grep, qui supporte aussi les expressions régulières étendues (ERE).
L’organisation des pages de manuels en sections, n’est pas spécifiée par POSIX. Cette organisation n’est pas la même partout, même s’il y a de grandes similitudes.
La commande echo ne devrait normalement accepter aucune option, excepté l’option “ -n ” pour certains profils de conformité. Rien que pour cette commande, beaucoup de UNIX‑like ne sont pas conformes à POSIX.

la page de manuel précise :
POSIX a écrit : 
It is not possible to use echo portably across all POSIX systems unless both -n (as the first argument) and escape sequences are omitted.

The printf utility can be used portably to emulate any of the traditional behaviors of the echo utility as follows […]

New applications are encouraged to use printf instead of echo.


L’intégralité sur la page de manuel : echo (opengroup.org).
Une phrase à propos de SUS, dans le documentation de NetBSD :

netbsd.org a écrit : 
The Single UNIX Specification (an extended and now independently maintained subset of the X/Open Portability Guide) specifies a number of basic facilities not defined by POSIX.

SUS est maintenue indépendamment de POSIX et ajoute des fonctionnalités non‑définies par POSIX.

Source : Interoperability with other systems (netbsd.org).
Pas un standard POSIX, mais utile dans ce contexte, une introduction à UDF, le système de fichiers le plus susceptible d’être supporté partout, tout en répondant aux exigences des systèmes de fichiers modernes, comme disposer du support pour les attributs étendus, les branches de données alternatives, de la date de création des fichiers (*), etc : Wenguang’s Introduction to Universal Disk Format (sites.google.com).

À ses débuts, ce système de fichiers était limité aux CD et DVD, mais il a depuis été étendu pour être applicable aussi aux disques dur, clés USB, etc. Mais attention tout de même au support des différentes versions de UDF, les systèmes d’exploitation ne les supportent pas toujours entièrement. Le meilleur support, c’est à dire le plus complet, est celui de l’UNIX NetBSD, à partir de NetBSD 5.

(*) Une chose qui notablement, manque à tous les systèmes de fichier sur Linux ; en marge, le système de fichier des différents BSD, lui, dispose du support pour la date de création des fichiers (de même que les systèmes de fichiers de Windows, en dehors des UNIX).

— Édit du 2025-12-23 —

UDF est défini par un rapport technique de l’ECMA : Universal Disk Format (UDF) specification — ECMA TR/112 (ecma-international.org), Décembre 2023. Il semble aussi défini par un autre rapport technique : DVD read-only disk - File system specifications — ECMA TR/71 (ecma-international.org), Février 1998. Ces deux ensembles de documents, mentionnent conjointement qu’ils sont un sous‑ensemble, c’est à dire un profile, de ce standard : Volume and file structure for write-once and rewritable media using non-sequential recording for information interchange — ECMA-167 (ecma-international.org), Juin 1997. En peut en effet remarquer que l’ECMA-167, précède TR/71 et TR/112. La version web d’un ancien article d’un magazine francophone, appelé MOS, mentionne que l’ECMA-167 n’a jamais été vraiment mis en œuvre, trouvant ça dommage : Le format logique UDF pour disques optiques (mosarca.com), MOS № 144, 1996.
Magazine MOS en 1996 a écrit : 
Ils sont partis des travaux existants, notamment les normes ECMA-167 et ISO/IEC-13346 qui n'ont malheureusement donné lieu qu'à très peu d'implémentations à ce jour.

C’est en parlant des auteurs d’origine des spécifications de UDF.

Ça pourrait expliquer que ECMA-167 soit un standard et que UDF soit défini dans des documents qualifiés de rapports techniques.
La commande make est présente sur toutes les plateformes informatiques, mais souvent avec des extensions non‑conforme à POSIX, faisant que si on y fait pas attention, on est facilement piégé par ses extensions. Une page présente une approche pour l’écriture des fichiers Makefile, facilitant la compatibilité avec POSIX : A tutorial on portable Makefiles (nullprogram.com), 2017.