Was sind nützliche Befehlszeilenbefehle unter Mac OS X?


58

Welche Befehle sind in den Windows- und Linux- Threads für Mac OS X Server (oder Client) am nützlichsten ?


Einverstanden ist, dass diese Seite weitaus negativer zu sein scheint als der Stackoverflow. Die Leute scheinen bereit zu sein, jeden Beitrag "down" zu machen, von dem sie glauben, dass er nicht ihren Standards entspricht - es ist genug, um mich davonlaufen zu lassen.
Chopper3

thx, chopper3. Vielleicht wurde es für Mac verwandt abgewählt. Ich kann verstehen, dass ich nicht viel Apfelsachen sehen möchte, aber wirklich einfach "mac" zu deinen Tags hinzufügen / ignorieren und es ist sortiert
Benutzername

2
Es gibt jede Menge apfelspezifisches Zeug auf dieser Seite, die Leute hier scheinen es einfach zu genießen, negativ zu sein.
Chopper3

2
zu erwarten, nehme ich an ... wir sind Sysadmins :-)
Benutzername

1
Ich mag Ihren Benutzernamen ... Benutzername :)
Chopper3

Antworten:


28
say "some text"

Bekannt dafür , Menschen wieder in ihre Wohnungen zu locken , saynimmt Ihre Argumente auf und liest sie über das Audio-Ausgabegerät vor.


4
+1 für xkcd-Inhalte
Benutzername

4
Und es spricht sehr gut - siehe macosxhints.com/comment.php?mode=view&cid=107211 für eine Liste von Phrasen wie Mein Name ist Dr. Smith und ich leben auf Smith Dr. , entschied sich der Soldat seinen Nachtisch zu verlassen in die Wüste und Da es keine Zeit wie die Gegenwart gibt, dachte er, es sei Zeit, die Gegenwart zu präsentieren :-)
Arjan

23

pbpasteund pbcopymit dem Pasteboard (auch bekannt als Zwischenablage) zu interagieren.

Beispiele:

# copies the directory listing
ls -l | pbcopy

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

Ich denke, sie verwenden standardmäßig die Makroman-Codierung. Wenn Sie also UTF-8 (was Sie tun) möchten, sollten Sie diese Links überprüfen:


19
fs_usage

Ermöglicht die Überwachung der Dateisystemaktivität. Praktisch, wenn Sie sehen möchten, welche Dateien eine App erstellt. Weitere Informationen finden Sie unter http://rentzsch.com/macosx/fs_usageIntro .


Nachdem Rentzsch seinen Blog nach Tumblr verschoben hat, ohne seine Archive erneut zu veröffentlichen, können Sie seine Erklärung zu diesem großartigen Tool hier nachlesen
Joe Carroll


17
open .

Öffnet ein Finder-Fenster im aktuellen Arbeitsverzeichnis.


Verwenden Sie zum Starten anderer Apps Folgendes: open -a "Aktivitätsmonitor"
Benutzername

Freunde schöner Götterfunke ... Ich meine, danke, danke, danke !! Ich suchte nach einem Windows wie "Start". Und das ist es!
Daniel Schneller

'Dateiname öffnen' entspricht einem Doppelklick auf eine Datei im Finder - die zugehörige Anwendung wird gestartet und die Datei geöffnet.
Clinton Blackmore

13

Von der Kommandozeile aus mag ich die Fähigkeit:

Erstellen und brennen Sie eine "universelle" CD / DVD:

$ 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

Erstellen Sie ein ISO-Image von einer CD / DVD:

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

In der Lage zu sein, den Befehl otool zu vergessen, wenn ich ldd suche:

$ alias ldd = 'printf "Sende Befehl an \' \ '' otool -L \ '\' - \ n" && otool -L '

Hängen Sie ein Disk-Image über die Befehlszeile ein:

$ hdid diskimage.dmg (oder .iso)

Verwenden Sie die Vorschau, um auf eine Manpage zuzugreifen:

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

1
+1 für die Manpage / Vorschau. Genial.
Sam Halicke

12

Das CLI-Dienstprogramm 'airport' ist mein Favorit. Siehe http://osxdaily.com/2007/01/18/airport-the-little-known-command-line-wireless-utility/ . Es zeigt Ihnen Details wie den Signalpegel, den Rauschpegel und die BSSID des AP, dem Sie zugeordnet sind.


1
Cool. ZB: /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I Zeigt detaillierte Informationen zu Signalqualität, Rauschen, Sicherheit und anderen WiFi-Netzwerkattributen an.
Benutzername

11
ipconfig getpacket en0

Zeigt die Netzwerkkonfiguration für die primäre Ethernet-Schnittstelle (en0) an.

Wenn Sie an Windows gewöhnt sind und denken, dass "ipconfig" kaputt ist - ist es nicht ;-) Sie müssen nur ein paar Argumente hinzufügen


4
Wenn Sie an Linux gewöhnt sind, funktioniert 'ifconfig en0' natürlich genauso gut.
Tim

Oder verwenden en1Sie, wenn Sie drahtlos sind.
Dana the Sane

11
drutil tray open

Von unschätzbarem Wert (über ssh), wenn keine Tastatur angeschlossen ist, da die Auswurftaste bei optischen Apple-Laufwerken nicht von außerhalb des Gehäuses zugänglich ist.


11

Es kann nicht genug gesagt werden, "offen" ist großartig. Sie können Dokumente in ihrem GUI-Programm öffnen und das GUI-Programm auch mit -a auswählen. Zum Beispiel,

open -a vlc movie.avi

öffnet VLC und weist es an, movie.avi in ​​Ihr aktuelles Verzeichnis zu laden.

open movie.avi

würde es mit jedem Programm öffnen, das der Standard ist. Wenn Sie nur ein Programm öffnen möchten, können Sie dies auch tun:

open -a system\ preferences

führt die Systemeinstellungen aus. Sie können auch URLs öffnen:

open vnc://myserver:5900

öffnet die Bildschirmfreigabe und stellt eine Verbindung zu myserver her.

Auschecken

man open

um alle Flags zu sehen, die Sie verwenden können.


10
softwareupdate

Aktualisieren Sie Ihren Mac über die CLI.


9
networksetup

Konfigurieren Sie alles, was Sie im Bereich "Netzwerkeinstellungen" in den Systemeinstellungen in der Befehlszeile finden. Erleichtert das Schreiben von Skripten oder das Ausführen von Aufgaben aus der Ferne erheblich .


8
sudo changeip -checkhostname

Überprüft, ob die DNS-Auflösung in Vorwärts- und Rückwärtsrichtung fehlerfrei ist, und zeigt Ihnen häufig den Befehl an, mit dem Sie das Problem beheben können. Wenn es heißt "die Namen stimmen überein, es gibt nichts zu ändern", sind Sie in guter Verfassung. Wichtig, wenn Sie jemals die Netzwerkkonfiguration Ihres Servers ändern. Dies ist auch wichtig, bevor Sie Ihren Server zu einem Open Directory-Master hochstufen.


8
dscacheutil -flushcache

Ich stelle fest, dass ich diesen einen Haufen benutze, um den DNS-Cache auf 10.5+ zu leeren.


Dies funktioniert
natürlich

Ich habe gerade überprüft, es funktioniert auch auf 10.6.
Bruce McLeod

Ich bin zwar der Meinung, dass ich das öfter ausführen muss, erinnere mich aber nicht, dass ich den Linux- oder Windows-DNS-Cache leeren muss. Vielleicht ist OS X beim DNS-Caching besonders aggressiv?
Petertonoli


7
last

Zeigt an, wer sich bei einem System angemeldet hat, wie lange es verwendet wurde und wann das System neu gestartet wurde.

Hier ist ein Beispiel für die Ausgabe:

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

Liste geöffneter Dateien

Praktisch, wenn Sie Ihr USB-Laufwerk auswerfen möchten und erfahren, dass es verwendet wird. Beenden Sie alle Anwendungen und versuchen Sie es erneut.

$ 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

In diesem Fall hatte ich cdauf das Laufwerk zugegriffen und so griff bash auf das Volume zu.

Beachten Sie, dass mds-Einträge bedeuten, dass Spotlight das Laufwerk indiziert.




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

Ermöglicht das Beenden einer Anwendung über die Shell.

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

Nützliche letzte Zeile eines langen Shell-Skripts, schaltet den Mac nach Abschluss des Skripts in den Energiesparmodus. Ich habe es auf iSleep eingestellt.

pbpaste | script.sh |pbcopy

Nimmt den Inhalt des Pasteboards (edit-> copy) und leitet ihn an script.sh weiter. Die Ergebnisse werden in die Zwischenablage eingefügt, damit Sie sie bearbeiten und in ein Dokument einfügen können.


5
mcxquery

Auf diese Weise können Sie sehen, welche MCX-Einstellungen (Managed Client) auf einen Clientcomputer angewendet werden.

[Das GUI-Äquivalent finden Sie in System Profiler und klicken Sie im Abschnitt Software auf "Managed Client".]

Es ist hilfreich festzustellen, ob ein Computer verwaltet wird und ob er die erwarteten Einstellungen erhält.


5
sw_vers

Zeigt die aktuell installierte Version und den Build von Mac OS X an.


4
system_profiler

Geben Sie die gleichen Ergebnisse wie bei Auswahl von "Über diesen Mac" -> "Weitere Informationen" nur in der Befehlszeile an.

Laufen

system_profiler -usage

Wenn Sie sich die Manpage ansehen, erhalten Sie Tipps zur Verwendung.

Einige Beispiele:

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

Dadurch wird das Systemprofil in eine Datei kopiert, die später auf einem anderen Computer angezeigt werden kann.

system_profiler SPUSBDataType

Informiert Sie über alle Ihre USB-Geräte (einschließlich der Hersteller- und Produkt-IDs, die beim Auffinden von Treibern hilfreich sind).

system_profiler SPUSBDataType | grep "Product ID" -c

zeigt an, wie viele USB-Geräte angeschlossen sind (einschließlich interner USB-Geräte). Dies ist nützlich, um festzustellen, ob der Computer ein Gerät erkennt (oder wenn Parallel es beispielsweise gepackt hat oder es tot ist) In der GUI-App von System Profiler können Sie Ansicht -> Aktualisieren aus dem Menü auswählen, um die Liste zu aktualisieren. das mag einfach einfacher sein.]

system_profiler SPHardwareDataType

Sie erhalten grundlegende Hardwareinformationen (nützlich für die Anlagenverfolgung) und

system_profiler SPHardwareDataType | grep Serial

gibt Ihnen die Seriennummer des Geräts.



4
df -h

So überprüfen Sie, wie viel Speicherplatz ich derzeit auf der gesamten Festplatte habe.


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

Liste Server Werbung in Bonjour. Der letzte Vorschlag listet die Arten von Diensten auf, die Sie auflisten können. Die Auflistung ist live, drücken Sie Strg-C, wenn Sie genug gesehen haben.

Der gleiche Befehl ist in den letzten Linux-Versionen und im Bonjour SDK für Windows enthalten.


4
opendiff file1 file2

Läuft FileMerge (eine grafische , diffdie mit Apple Developer Tools kommt) auf file1und file2.


4
sudo opensnoop

In Leopard und neueren Versionen werden Berichte erstellt, in denen geöffnete Dateien erfolgreich verarbeitet werden. Sie können ihn auffordern, alle Dateien anzuzeigen, die von einem bestimmten Prozess im System geöffnet werden, oder zu prüfen, ob ein Prozess eine bestimmte Datei mit unterschiedlichen Zeitstempeln öffnet, und anzuzeigen, ob Fehler auftreten.

Hier einige Details:

opensnoop ist ein Dtrace- Skript. Es gibt viele andere in / usr / bin, die sich damit befassen, welches System einen Prozess aufruft, welche Prozesse es erstellt und welche E / A-Vorgänge es ausführt. Rufen Sie apropos DTraceeine Liste auf und lesen Sie die Manpages, um Einzelheiten zu erfahren.


Ich erfuhr von opensnoop, als ich Schwierigkeiten hatte zu diagnostizieren, warum ein Comic Life Magiq 1.1 unter OS 10.5.8 für Benutzer mit Netzwerkkonten abstürzte.

Ich lief (mehrmals, auf verschiedenen Konten, via ssh):

sudo opensnoop -e -n Comic > output.txt

Die letzte Datei, die von Netzwerkbenutzern geöffnet wurde, war ungefähr so ​​(mit vollständigem Pfad):

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

Das erinnerte mich daran, dass Safari 5.0 für Netzwerkbenutzer abstürzte, und wir haben es umgangen, indem wir entweder eine Einstellung festgelegt haben, bei der keine Favoriten zwischengespeichert werden, oder indem wir eine Datei umgeleitet haben. Apple hat anscheinend das Problem in Safari 5.0.1 behoben. Als ich gestern ein Upgrade auf Safari 5.0.2 durchgeführt habe, wurde der Absturz für Comic Life Magiq-Benutzer behoben.


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

Startet den Remotedesktopdienst (nützlich, wenn Sie nur über SSH-Zugriff verfügen, aber über die GUI auf Ihrem Client-Mac etwas tun möchten). Weitere Optionen finden Sie unter: http://support.apple.com/kb/HT2370


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.