¿Cuáles son los comandos de línea de comandos útiles en Mac OS X?


58

Según los hilos de Windows y Linux , ¿qué comandos encuentra más útiles en Mac OS X Server (o Client)?


De acuerdo, este sitio parece ser mucho más negativo que el stackoverflow, la gente parece preparada para 'bajar' cualquier publicación que no cree que cumpla con sus estándares: es suficiente para hacerme alejarme.
Chopper3

gracias, chopper3. tal vez fue rechazado por estar relacionado con Mac. Puedo entender que no quiero ver muchas cosas de Apple, pero realmente solo agrego / ignoro "mac" a sus etiquetas, y está ordenado
nombre de usuario

2
Hay un montón de cosas específicas de Apple en este sitio, la gente aquí parece disfrutar de ser negativa.
Chopper3

2
es de esperar, supongo ... somos administradores de sistemas :-)
nombre de usuario

1
Me gusta su nombre de usuario ... nombre de usuario :)
Chopper3

Respuestas:


28
say "some text"

Famoso para que las personas vuelvan a sus apartamentos , saytoma sus argumentos y los lee en voz alta a través del dispositivo de salida de audio.


44
+1 para contenido xkcd
nombre de usuario

44
Y habla muy bien: vea macosxhints.com/comment.php?mode=view&cid=107211 para obtener una lista de frases como Mi nombre es Dr. Smith y vivo en Smith Dr. , El soldado decidió abandonar su postre en el desierto y Como no hay tiempo como el presente, pensó que era hora de presentar el presente :-)
Arjan

23

pbpastee pbcopyinteractuar con el portapapeles (también conocido como portapapeles).

Ejemplos:

# copies the directory listing
ls -l | pbcopy

# get pasteboard lines containing foo and save them in a_file
pbpaste | grep foo > a_file

Creo que usan la codificación macroman de manera predeterminada, por lo que si desea UTF-8 (que es lo que hace) debe consultar estos enlaces:


19
fs_usage

Le permite monitorear la actividad del sistema de archivos. Útil si desea ver qué archivos crea alguna aplicación. Consulte http://rentzsch.com/macosx/fs_usageIntro para obtener más explicaciones.


Ahora que Rentzsch ha trasladado su blog a Tumblr sin volver a publicar sus archivos, uno puede leer su explicación de esta gran herramienta aquí: web.archive.org/web/20091231090628/http://rentzsch.com/macosx/…
Joe Carroll

También vale la pena leer: cocoadev.com/index.pl?FsUsageTips
Joe Carroll

17
open .

Abre una ventana de búsqueda en el directorio de trabajo actual.


para iniciar otras aplicaciones, use algo como: abrir -a "monitor de actividad"
nombre de usuario

Freunde schöner Götterfunke ... Quiero decir, ¡gracias, gracias, gracias! Estaba buscando un Windows como "inicio". y esto es todo!
Daniel Schneller

'abrir nombre de archivo' actúa igual que hacer doble clic en un archivo en el Finder: iniciará la aplicación asociada y abrirá el archivo.
Clinton Blackmore

13

Desde la línea de comandos, me gusta tener la capacidad de:

Cree y grabe un CD / DVD "universal":

$ mkisofs -allow-multidot -allow-Leading-dots -d -hide-rr-moved \
-l -joliet-long -R -T -v \
-V VOLUME_NAME -o output.iso root-cd-dir /
$ hdiutil burn -noverifyburn output.iso

Cree una imagen ISO desde un CD / DVD:

$ diskutil unmountDisk / dev / disk2s0
$ dd if = / dev / disk2s0 of = cdname.iso bs = 32m

Poder olvidar el comando otool cuando estoy buscando ldd:

$ alias ldd = 'printf "Enviando comando a \' \ '' otool -L \ '\' '- \ n" && otool -L'

Montar una imagen de disco desde la línea de comando:

$ hdid diskimage.dmg (o .iso)

Utilice la vista previa para acceder a una página de manual:

$ man -t rsync | open -f -a /Applications/Preview.app

1
+1 para la pista de manual / vista previa. Increíble.
Sam Halicke

12

La utilidad CLI 'aeropuerto' es mi favorita. Ver http://osxdaily.com/2007/01/18/airport-the-little-known-command-line-wireless-utility/ . Le mostrará detalles como el nivel de señal, el nivel de ruido y el BSSID del AP al que está asociado.


1
Bueno. Por ejemplo: /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I Muestra información detallada sobre la calidad de la señal, el ruido, la seguridad y otros atributos de la red WiFi.
nombre de usuario

11
ipconfig getpacket en0

Muestra la configuración de red para la interfaz Ethernet primaria (en0).

Si está acostumbrado a Windows y cree que "ipconfig" está roto, no lo está ;-) Solo necesita agregar un par de argumentos


44
Por supuesto, si está acostumbrado a Linux, 'ifconfig en0' funciona igual de bien.
Tim

O úselo en1si está conectado a la red inalámbrica.
Dana the Sane

11
drutil tray open

Invaluable (sobre ssh) cuando no hay un teclado conectado ya que el botón de expulsión en las unidades ópticas de Apple no es accesible desde el exterior de la carcasa.


11

No se puede decir lo suficiente, "abierto" es genial. Puede abrir documentos en su programa GUI y también puede seleccionar el programa GUI con -a. Por ejemplo,

open -a vlc movie.avi

abrirá VLC y le dirá que cargue movie.avi en su directorio actual.

open movie.avi

lo abriría con cualquier programa que sea el predeterminado. Si solo desea abrir un programa, también puede hacerlo:

open -a system\ preferences

ejecutará las Preferencias del sistema. También puedes abrir Urls:

open vnc://myserver:5900

abrirá Compartir pantalla y se conectará a myserver.

Revisa

man open

para ver todas las banderas que puedes usar.



9
networksetup

Configure todo lo que encuentre en el Panel de preferencias de red en Preferencias del sistema en la línea de comandos. Hace que escribir guiones o hacer cosas de forma remota sea mucho más fácil.


8
sudo changeip -checkhostname

Comprueba que la resolución de DNS directa e inversa es correcta y, a menudo, muestra el comando que puede usar para solucionar el problema. Si dice "los nombres coinciden, no hay nada que cambiar", estás en buena forma. Vital si alguna vez cambia la configuración de red de su servidor. También es importante usar esto antes de promocionar su servidor a Open Directory Master.


8
dscacheutil -flushcache

Me encuentro usando ese montón para vaciar el caché de DNS, en 10.5+.


Cabe destacar que esto solo funciona en Mac OS X 10.5
Chealion el

Acabo de comprobar, también funciona en 10.6.
Bruce McLeod

Elegido como me parece que tengo que ejecutar esto la mayoría de las veces, sin embargo, no recuerdo tener que vaciar el caché DNS de Linux o Windows. ¿Quizás OS X es particularmente agresivo en el almacenamiento en caché de DNS?
petertonoli


7
last

muestra quién inició sesión en un sistema, cuánto tiempo lo utilizó y cuándo se reinició el sistema.

Aquí hay una muestra de la salida:

clinton   ttys000                   Thu May 28 22:33   still logged in
clinton   console                   Thu May 28 08:05   still logged in
reboot    ~                         Thu May 28 08:05 
shutdown  ~                         Wed May 27 20:15 
clinton   console                   Wed May 27 17:33 - 20:15  (02:42)
...

wtmp begins Thu May 14 09:26 


7
 lsof

lista de archivos abiertos

Es útil cuando desea expulsar su unidad USB y se le dice que está en uso y, por favor, cierre todas las aplicaciones e intente nuevamente.

$ sudo lsof /Volumes/CLINTON
COMMAND   PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
bash    55966 clinton  cwd    DIR  14,12    16384    2 /Volumes/CLINTON
lsof    56042    root  cwd    DIR  14,12    16384    2 /Volumes/CLINTON
lsof    56043    root  cwd    DIR  14,12    16384    2 /Volumes/CLINTON

En este caso, había cdeditado en el disco y entonces bash estaba accediendo al volumen.

Tenga en cuenta que si ve entradas 'mds', significa que Spotlight está indexando la unidad.




6
osascript -e 'tell application "AppName" to quit'

Le permite salir de una aplicación desde el shell.

osascript -e 'tell application "Finder" to sleep'

Útil última línea de un script de shell largo, pone a Mac en suspensión cuando se completa el script. Lo tengo alias a iSleep.

pbpaste | script.sh |pbcopy

toma el contenido del cartón (editar-> copiar) y lo canaliza a script.sh. Los resultados se colocan en el tablero para que los edite-> pegue en un documento.


5
mcxquery

esto le permitirá ver qué tipo de configuración de MCX (cliente administrado) se aplica a una máquina cliente.

[El equivalente de la GUI es ir a System Profiler y, en la sección Software, hacer clic en "Cliente administrado"].

Es útil determinar si una máquina está administrada y ver si está obteniendo la configuración que espera.



4
system_profiler

Le da los mismos resultados que obtiene cuando elige Acerca de esta Mac -> Más información, solo en la línea de comandos.

Corriendo

system_profiler -usage

o mirando la página del manual le dará consejos sobre cómo usarlo.

Un par de ejemplos:

system_profiler -xml > MySystem.spx
# and later,
open MySystem.spx  # or just double click on it in the Finder

esto volcará el perfil del sistema a un archivo que se puede ver más adelante en una máquina diferente.

system_profiler SPUSBDataType

Le informa sobre todos sus dispositivos USB (incluidos sus ID de proveedor y de producto, que pueden ayudarlo a rastrear los controladores).

system_profiler SPUSBDataType | grep "Product ID" -c

le dirá cuántos dispositivos USB están conectados (incluidos los dispositivos USB internos), lo cual es útil para ver si la computadora ve un dispositivo (o, por ejemplo, si Parallel lo ha agarrado o está muerto). [Tenga en cuenta que en el Aplicación System Profiler GUI, puede elegir Ver -> Actualizar en el menú para actualizar la lista; eso puede ser más fácil]

system_profiler SPHardwareDataType

obtendrá información básica del hardware (útil para el seguimiento de activos) y

system_profiler SPHardwareDataType | grep Serial

le dará el número de serie de la máquina.




4
dns-sd -B _ssh
dns-sd -B _rfb
dns-sd -B _services._dns-sd._udp

Listado de servidores de publicidad en Bonjour. La última sugerencia enumera los tipos de servicio que puede enumerar. La lista está en vivo, presione Ctrl-C cuando haya visto suficiente.

El mismo comando viene en Linuxes recientes y en Bonjour SDK para Windows.



4
sudo opensnoop

en Leopard y versiones posteriores, informa qué procesa los archivos abiertos, ya sea con éxito o no. Puede pedirle que mire todos los archivos que se abren en el sistema, mediante un proceso específico, o si algún proceso está abriendo un archivo determinado, con diferentes tipos de marcas de tiempo, y que muestre si se producen errores.

Aquí hay algunos detalles más:

opensnoop es un script dtrace ; Hay muchos otros en / usr / bin que analizan cosas como qué sistema realiza un proceso, qué procesos está creando y qué E / S está haciendo. Corre apropos DTracepara obtener una lista y mira las páginas de manual para más detalles.


Me enteré de opensnoop cuando luchaba por diagnosticar por qué un Comic Life Magiq 1.1 estaba fallando en OS 10.5.8 para usuarios con cuentas de red.

Corrí (varias veces, en diferentes cuentas, a través de ssh):

sudo opensnoop -e -n Comic > output.txt

El último archivo abierto por los usuarios de la red fue algo así (con una ruta completa):

/Network/Servers/.../username/Library/Icons/WebpageIcons.db

lo que me recordó que Safari 5.0 se estaba bloqueando para los usuarios de la red, y lo solucionamos gestionando una preferencia para no almacenar en caché los favicons o redirigiendo un archivo. Aparentemente, Apple solucionó el problema en Safari 5.0.1, y cuando actualicé a Safari 5.0.2 ayer, solucionó el bloqueo para los usuarios de Comic Life Magiq.


3
sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -restart -agent

Inicia el servicio de Escritorio remoto (útil si solo tiene acceso SSH pero quiere hacer algo usando la GUI en su Mac cliente). Para obtener más opciones, consulte: http://support.apple.com/kb/HT2370


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.