7 votos

¿Cómo encontrar "file-release" en OS X El Capitan 10.11.6?

No puedo encontrar el archivo-release a través de la línea de comandos en OS X El Capitan Versión 10.11.6. En mi máquina virtual en Ubuntu puedo hacer "ls /etc/*release" y me muestra dos archivos con toda la información necesaria:

$ cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 7.0 (Maipo)

$ cat /etc/os-release 
NAME="Red Hat Enterprise Linux Server"
VERSION="7.0 (Maipo)"
ID="rhel"
ID_LIKE="fedora"
VERSION_ID="7.0"
PRETTY_NAME="Red Hat Enterprise Linux Server 7.0 (Maipo)"

Ni idea de cómo encontrar el archivo con la información de lanzamiento en Mac. Por favor, dame una pista o una pista de cómo buscarlo?

5voto

klanomath Puntos 19587

Los archivos /etc/*release contienen información específica del sistema operativo, como el nombre de la distribución y la versión, principalmente en las distribuciones de Linux .

Una de las finalidades de los archivos es ayudar al software a detectar el tipo de distribución.

Un archivo que contiene información similar no existe realmente en OS X/MacOS pero puede ser imitado con el siguiente shell script:

#!/bin/sh

OS=`uname -s`
REV=`uname -r`
MACH=`uname -m`
if [ "${OS}" = "Darwin" ]; then
    OIFS="$IFS"
    IFS=$'\n'
    set `sw_vers` > /dev/null
    DIST=`echo $1 | tr "\n" ' ' | sed 's/ProductName:[ ]*//'`
    VERSION=`echo $2 | tr "\n" ' ' | sed 's/ProductVersion:[ ]*//'`
    BUILD=`echo $3 | tr "\n" ' ' | sed 's/BuildVersion:[ ]*//'`
    OSSTR="${OS} ${DIST} ${REV}(SORRY_NO_PSEUDONAME ${BUILD} ${MACH})"
    IFS="$OIFS"
fi
echo ${OSSTR}

Ejecutando el script en mi sistema se obtiene:

Darwin Mac OS X 13.4.0(SORRY_NO_PSEUDONAME 13F1911 x86_64)

En OS X/MacOS el archivo no es necesario porque los requisitos de un paquete de software se determinan por otros medios:

  • Info.plist en una aplicación de instalación (por ejemplo Instalar MacOS Sierra.app requiere LSArchitecturePriority=x86_64 o LSMinimumSystemVersion=10.7)
  • preflight scripts en un paquete de instalación que utiliza sw_vers o comandos similares para determinar la versión del sistema operativo.

4voto

Oskar Puntos 1242

Dejando a un lado que linux tiene una estructura de versiones diferente a la de MacOS - puedes usar la herramienta y los archivos nativos para catalogar las versiones de MacOS para todos los OS X anteriores a la 10.12 también:

 /System/Library/CoreServices/SystemVersion.plist

Y la página del manual de sw_vers documenta lo anterior como la fuente para construir y nombrar el sistema operativo.

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.12
BuildVersion:   16A323

Además, la documentación de javascript parece un poco más detallada si no necesitas una herramienta bash / shell / comando: https://developer.apple.com/reference/installerjs/system

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X