Herramientas de línea de command disponibles por defecto

En un sistema basado en Unix, una cantidad de commands están disponibles por defecto (en /bin o /usr/bin ). Supongamos que en algún momento instalé más herramientas como git, svn …

En OS X, si instalo XCode y luego el package de herramientas de command-line, se instalará un set de herramientas de desarrollo en el sistema. Entonces, ¿cómo puedo saber qué commands están disponibles en el momento de la installation del sistema operativo?

  • ¿Cómo puedo usar una key ssh con una frase de contraseña pero no tengo que escribir la frase de contraseña cada vez que trabajo en un shell remoto?
  • GateKeeper me permite instalar cualquier cosa, no se realizan comprobaciones
  • Cada enlace comienza la descarga en el browser en mi osx
  • ¿Por qué la aplicación Finder siempre está abierta?
  • Deshabilitar la expansión de barras de desplazamiento en Mountain Lion
  • ¿Puede un atajo de keyboard forzar windows de TextEdit para cerrar y descartar todos los cambios?
  • ¿ netcat , nc disponible de forma pnetworkingeterminada en Mac OSX o está instalado junto con las herramientas de command-line?

  • Progreso lento de la copy de security del equipo Time
  • Si compro páginas desde la tienda de aplicaciones Mac OS, ¿debo volver a comprarlas en la tienda de iOS?
  • El área de medios en el cuadro de dialog de selección de files del Buscador siempre está vacía
  • MacBook Pro Mid 2009 tiene una partición de recuperación?
  • Usar la tecla de locking de mayúsculas en lugar de hacer clic con el button derecho (menu contextual)
  • Navegación del menu desplegable por el keyboard
  • 3 Solutions collect form web for “Herramientas de línea de command disponibles por defecto”

    Entonces, ¿cómo puedo saber qué commands están disponibles en el momento de la installation?

    Los commands disponibles después de una nueva installation pertenecen a uno de estos cuatro packages:

    • com.apple.pkg.BSD
    • com.apple.pkg.BaseSystemBinaries
    • com.apple.pkg.BaseSystemResources
    • com.apple.pkg.Essentials

    Puede enumerar los commands incluidos en cada package con este command:

     pkgutil --files <package name> | egrep '^usr/s*bin|^s*bin/' 

    ¿ netcat , nc disponible de forma pnetworkingeterminada en Mac OS X o está instalado junto con las herramientas de command-line?

    Encontré nc con:

     pkgutil --files com.apple.pkg.BaseSystemBinaries | egrep '^usr/bin/nc' 

    así que sí, nc pertenece a la installation base de Mavericks (OS X 10.9).

    No pude encontrar netcat , así que si lo tiene en su sistema, se instaló más tarde.


    Para enumerar todos los commands provistos por todos los packages, ejecute en Terminal:

     for p in $(pkgutil --packages); do list_of_cmds=$(pkgutil --files $p | egrep '^usr/s*bin|^s*bin/') if [ ! -z "$list_of_cmds" ]; then echo ">>>> $p <<<<" echo "$list_of_cmds" fi done 

    También puede canalizar el command a un file en su escritorio para reference posterior:

     for p in $(pkgutil --packages); do list_of_cmds=$(pkgutil --files $p | egrep '^usr/s*bin|^s*bin/') if [ ! -z "$list_of_cmds" ]; then echo ">>>> $p <<<<" echo "$list_of_cmds" fi done > ~/Desktop/cmds_from_pkgs.txt 

    netcat es parte de los binarys del sistema base como se puede ver con

     pkgutil --files com.apple.pkg.BaseSystemBinaries | grep "usr/bin/nc" 

    En realidad, no se puede decir qué files ejecutables formaban parte del sistema operativo original y cuáles se instalaron más tarde.

    En general, mirar la página de manual le dará una buena idea. Si la página man comienza algo así como "Manual de commands generales de BSD", es casi seguro que forma parte del sistema operativo original. Notarás que estos también terminarán con una línea que contiene 'BSD' o 'Mac OS X' en cada extremo.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).