¿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)?

nombre de usuario
fuente
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.

Tim
fuente
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:

kch
fuente
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.

nombre de usuario
fuente
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.

richardhoskins
fuente
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
Gary Chambers
fuente
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.

Jason Luther
fuente
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

nombre de usuario
fuente
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.

James
fuente
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.

w00t
fuente
10
softwareupdate

Actualice su mac desde la CLI.

dvoita
fuente
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.

Chealion
fuente
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.

nombre de usuario
fuente
8
dscacheutil -flushcache

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

Bruce McLeod
fuente
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
ping 224.0.0.1

Haga ping a todos los dispositivos en su subred

nombre de usuario
fuente
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 
Clinton Blackmore
fuente
7
srm

Versión de línea de comando para eliminación segura.

Jauder Ho
fuente
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.

Clinton Blackmore
fuente
6

http://www.commandlinefu.com

Si bien no es específicamente un recurso de Mac, está utilizando el ícono de la Terminal, y la mayoría de la lista de comandos realmente útiles funcionará.

Clinton Blackmore
fuente
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.

sal
fuente
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.

Clinton Blackmore
fuente
5
sw_vers

Muestra la versión instalada actualmente y la compilación de Mac OS X.

nombre de usuario
fuente
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.

Clinton Blackmore
fuente
4
ifconfig en0 ether 00:00:00:00:00:00

Cambia (falsifica) la dirección MAC hasta el próximo reinicio

nombre de usuario
fuente
Me encontré con esto hace unos días aquí: krypted.com/mac-os-x/… - útil para probar la configuración del servicio DHCP
nombre de usuario
4
df -h

Para verificar cuánto espacio en disco tengo actualmente en todo el disco.

hendrasaputra
fuente
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.

James
fuente
4
opendiff file1 file2

Ejecuta FileMerge (un gráfico diffque viene con Apple Developer Tools) en file1y file2.

las3rjock
fuente
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.

Clinton Blackmore
fuente
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

nombre de usuario
fuente
3
drutil eject

expulsará un CD.

Clinton Blackmore
fuente