Was sind diese geheimnisvollen Dateien ".profile" und ".bash_profile", von denen Sie gehört haben? Wie gehen Sie vor, um PATH etwas hinzuzufügen, zu dem Sie von vielen Anwendungen aufgefordert werden (ohne zu erklären, wie)? Was sind Aliase und wie können sie Ihren Workflow unterstützen? Erfahren Sie alles und noch viel mehr in diesem Artikel über die tiefere Kontrolle von OS X.
Wenn Sie etwas anderes gemacht haben, als in sozialen Netzwerken zu surfen und Filme auf Ihrem Mac anzusehen, wissen Sie, dass unter der Haube ein paar mysteriöse Dinge vor sich gehen. Möglicherweise haben Sie eine Anwendung wie den Homebrew-Paketmanager installiert, der Sie aufforderte, etwas Unklares wie "Hinzufügen von / usr / local / sbin zu Ihrem Pfad" auszuführen, oder Sie haben vielleicht das Wort "Alias-Befehl" gehört oder hatten bereits eine Anwendung sagen Sie "X zu Ihrem Profil hinzufügen".
Die in diesem Artikel vorgestellten Aliasnamen beschleunigen Ihren Workflow.
In diesem Artikel möchte ich die Grundlagen dieser scheinbar schwarzen magischen Aktionen behandeln und Sie in die wunderbare Welt der Aliase einführen. Während das Einrichten von Aliasnamen auf die in diesem Artikel beschriebene Weise für Softwareentwickler von unschätzbarem Wert ist, werden gelegentliche Benutzer leicht auch für sie eine Verwendung finden.
Aliase sind Verknüpfungen zu Befehlen. Wenn Sie beispielsweise Terminal verwenden, um etwas zu tun, z. B. in Ihren Ordner / Users / [Benutzername] / Sites / zu wechseln, verwenden Sie dies wahrscheinlich
$ cd / Users / [Benutzername] / Sites
oder
$ cd ~ / Sites
Dort müssen Sie wahrscheinlich ein bestimmtes Projekt eingeben (z. B. "myProject") und dies durch Eingabe
$ cd meinProjekt
Während Sie alles in einem Befehl eingeben, wie folgt:
$ cd ~ / Sites / mein Projekt
Dies ist nicht sehr zeitaufwändig und kann langweilig werden, insbesondere in tief verschachtelten Ordnern oder wenn Sie häufig Ordner wechseln müssen.
Mit Aliases können Sie es schneller machen.
Aliase helfen Ihnen, lange Befehle oder Befehlsketten zu verkürzen.
Versuchen Sie, das Terminal zu öffnen (indem Sie zu Applications -> Utilities -> Terminal gehen) und tippen
$ alias goto_web = "cd ~ / sites"
Stellen Sie sicher, dass ein Ordner namens Sites in Ihrem Basisordner vorhanden ist, und erstellen Sie darin einen Ordner myProject. Führen Sie dann den folgenden Befehl im Terminal aus:
$ alias goto_myP = "goto_web; cd meinProjekt"
Nun tippe "goto_myP" ein und beobachte die Magie, wenn du die Eingabetaste drückst. Es ging automatisch in ~ / Sites / myProject, unabhängig davon, wo Sie sich gerade befanden, als Sie es eingegeben haben. Die Vorteile sind zweifach:
Es gibt jedoch ein Problem. Sobald wir uns ausloggen, sind die Aliase, die wir auf diese Weise definiert haben, verschwunden. Sie werden nirgendwo gespeichert, und das Betriebssystem wurde nicht aufgefordert, sie erneut einzurichten, sobald wir uns wieder anmelden. Wie gehen wir also mit diesem Problem um? Die .profile-Datei.
Sobald sich der Benutzer abmeldet, verschwinden die vom Terminal definierten Aliase.
Beginnen wir mit den Grundlagen.
Wenn der Dateiname mit "." Beginnt (Punkt) Zeichen ist diese Datei ausgeblendet
Das "." (Punkt) vor bestimmten Dateinamen bedeutet, dass die Datei "versteckt" ist. Diese Notation ist in der Regel für Systemdateien vorhanden, die standardmäßig nicht sichtbar sein sollten und entweder störend wirken oder flüchtig sind, da ihre Änderung das System in unerwünschter Weise beeinflussen könnte.
Die .DS_Store-Dateien gehören beispielsweise in die Kategorie "Ärgerlich" und werden von der Anwendung "Finder" in jedem Ordner erstellt, den Sie damit öffnen. Wenn Sie Ordner mit "cd ordnername" durch das Terminal führen, werden die .DS_Store-Dateien nicht erstellt. Der Finder speichert jedoch einige Informationen, die das Dateisystem im Auge behalten und das Durchsuchen und die Suchbarkeit verbessern.
In einem verwandten Hinweis ist die oben genannte .profile-Datei eine versteckte Datei. Dies ist eine optionale Datei, die dem System mitteilt, welche Befehle ausgeführt werden sollen, wenn sich der Benutzer, dessen Profildatei es ist, anmeldet. Wenn beispielsweise mein Benutzername "bruno" ist und sich eine .profile-Datei in / Users / bruno / befindet, deren gesamten Inhalt wird während des Anmeldevorgangs ausgeführt.
Sie können sehen, wohin wir damit gehen, nicht wahr? Wir werden die .profile-Datei verwenden, um unsere Alias-Befehle von oben zu speichern, um sie bei jedem Login auszuführen, damit diese Aliasnamen dauerhaft bleiben.
Der Inhalt einer .profile-Datei wird bei jedem Login des Eigentümers der Datei ausgeführt
Was ist dann das .bash_profile? Es ist genau das gleiche, aber unter einem anderen Namen. Die Unix-Shell, in der Sie sich anmelden, in diesem Fall OS X, sucht nach etc / profile und lädt es, falls vorhanden. Dann wird nach ~ / .bash_profile, ~ / .bash_login und schließlich nach ~ / .profile gesucht und der erste von diesen gefunden.
Ich benutze .profile, aber wenn Sie andere bevorzugen oder haben, können Sie sie umbenennen / zusammenführen und mit ihnen alles tun, was Sie möchten. Ihre Syntax ist identisch - denken Sie daran, dass nur eine geladen ist, und das Betriebssystem sucht sie in der oben genannten Reihenfolge. Weitere Informationen zu diesen Dateien finden Sie hier.
Aber wenn es versteckt ist, wie sehen wir es? Wie können wir eine Datei bearbeiten, die wir nicht sehen sollen? Wie der große Kommandant Hannibal sagen würde: "Wir werden entweder eine [.profile-Datei] finden oder eine erstellen". Ok, sagte er "Weg", aber der Kern ist der gleiche. Dies sind die zwei häufigsten Arten, um versteckte Dateien anzuzeigen:
Die erste besteht darin, sie für Sie sichtbar zu machen, aber immer noch versteckt. Dieser Weg wird nicht für gelegentliche Benutzer empfohlen. Geben Sie den folgenden Befehl in das Terminal ein:
Standardwerte schreiben com.apple.finder AppleShowAllFiles TRUE
Folgen Sie diesem mit einem Finder-Neustart:
$ killall Finder
Dies veranlasste den Finder, die versteckten Dateien in den von ihm geöffneten Ordnern nicht mehr zu ignorieren, und erzwang dann einen Neustart und das Bestätigen der neuen Einstellungen. Wenn Sie jetzt einen Ordner in Finder öffnen, sollten Sie darin eine .DS_Store-Datei und möglicherweise auch einige andere versteckte Ordner und Dateien wie in meinem eigenen Home-Ordner darunter finden.
Die zweite Methode besteht darin, über das Terminal nur nach Dateien zu suchen, die Sie benötigen. Starten Sie das Terminal und wechseln Sie zu Ihrem Basisordner, indem Sie Folgendes eingeben:
$ cd ~ /
Spitze: Sie können auch in Ihren Home-Ordner wechseln, indem Sie einfach cd eingeben und ein Leerzeichen eingeben.
Geben Sie dort Folgendes ein:
$ ls -a
Dies listet (ls) den Inhalt des Ordners auf, in dem Sie sich befinden, und die -ein Mit dem hinzugefügten Parameter werden "alle" Dateien angezeigt - auch versteckte.
Verwenden Sie eine der beiden oben genannten Methoden, um herauszufinden, welche versteckten Dateien in Ihrem Home-Ordner enthalten sind, und stellen Sie sicher, dass eine .profile- oder .bash_profile-Datei vorhanden ist. Wenn einer von ihnen existiert, großartig. Wenn sie nicht vorhanden sind, erstellen Sie die .profile-Datei mithilfe des Terminals wie folgt:
$ touch ~ / .profile
Auf die eine oder andere Weise sind wir jetzt sicher, dass die .profile-Datei existiert. Jetzt fügen wir einige Befehle hinzu!
Wir müssen die Datei zuerst zur Bearbeitung öffnen. Da es einfacher ist, eine Datei in einer Textbearbeitungsanwendung mit einer tatsächlichen GUI zu bearbeiten, werden wir nicht über das Terminal, sondern über TextEdit bearbeitet. Geben Sie Folgendes ein:
$ open -e ~ / .profile
Oder doppelklicken Sie einfach auf die Datei, wenn Sie Methode 1 zum Anzeigen ausgeblendeter Dateien verwendet haben, und wählen Sie TextEdit im Fenster Anwendungsauswahl aus. Der Befehl "Öffnen" öffnet jede Datei mit der Standardanwendung, wenn dies herausgefunden werden kann -e weist sie an, den Standard-Texteditor für das aktuelle Betriebssystem zu verwenden, und der letzte Teil ist die Datei, die wir öffnen möchten.
Sobald die Datei geöffnet ist, können wir folgende Zeilen hinzufügen:
alias goto_web = "cd ~ / sites" Alias goto_myP = "goto_web; cd mein Projekt" alias reload_profile = ". ~ / .profile"
Jetzt speichern und beenden. Die ersten beiden Aliase wurden bereits oben erläutert. Beim dritten Schritt: Wenn Sie die .profile-Datei während der Sitzung ändern, müssen wir sie erneut laden, um wirksam zu werden.
Normalerweise tun Sie dies manuell durch Eingabe
$ source ~ / .profile
oder nur
$. ~ / .profile
Aber wir können unser Leben gleich gut erleichtern und auch dafür einen Alias definieren. Wir können es jedoch noch nicht verwenden, weil das .profile nicht wirklich geladen wurde. Um zu verhindern, dass dieser Haken 22 unser Gehirn schmilzt, führen Sie einen der obigen Befehle aus (manuelles Nachladen)..
Wenn Sie die .profile-Datei während der Sitzung ändern, muss sie erneut geladen werden, um wirksam zu werden.
Wenn Sie fertig sind, probieren Sie es aus. Geben Sie "goto_web" ein und prüfen Sie, ob es funktioniert. Wenn Sie einen Neustart durchführen oder sich abmelden und erneut anmelden, sollte der Alias noch aktiv sein und weiterhin funktionieren. Der Alias "reload_profile" funktioniert jetzt ebenfalls.
Das ist alles dazu! Sie können jetzt Ihre eigenen Aliase hinzufügen. Fühlen Sie sich auch nicht nur auf Aliasnamen beschränkt (Anmerkung: Sie müssen eigentlich nicht goto_ * heißen, ich nenne sie einfach nur zum Gruppieren), spielen Sie herum und experimentieren Sie mit Ihren bevorzugten Terminalbefehlen. Hier ist ein Teil meiner eigenen Datei mit Inline-Kommentaren:
# Siehe http://www.shellperson.net/using-sudo-with-an-alias/ alias sudo = "sudo" # Dies hilft mir, Dateien zu bearbeiten, bei denen mein Benutzer nicht Inhaber von alias ist. Edit = "SUDO_EDITOR =" open -FWne "sudo -e" # Der Alias, der mich hier führt - zum Bearbeiten dieser Aliasnamen alias edit_profile = "open -e ~ / .profile" # Ich mache viel Webentwicklung, also muss ich diese nicht bearbeiten. Eigene Dateien Alias edit_hosts = "edit / etc / hosts" Alias edit_httpd = "edit /etc/apache2/httpd.conf" Alias edit_php = "edit /etc/php.ini" Alias edit_vhosts = "edit / etc / apache2 /" extra / httpd-vhosts.conf "# Einige meiner goto-Befehle, einschließlich eines zum Öffnen des php-Erweiterungsordners, wenn ich benutzerdefinierte Erweiterungen installieren muss. Alias goto_mw =" goto_web; cd mindworks "Alias goto_web =" cd ~ / Sites "Alias goto_phpext = "sudo open / usr / lib / php / extensions / no-debug-non-zts-20100525" # Dieser Alias zerstört rekursiv alle .DS_Store-Dateien in dem Ordner, in dem ich mich derzeit im Alias killDS = "find. -name * befindet. DS_Store -type f -delete "# Ein Alias zum Starten meiner benutzerdefinierten MySQL-Insta llation statt des Standardalias mysql = "/ usr / local / mysql-5.5.25-osx10.6-x86_64 / bin / mysql -u root" # Dieser Alias lädt diesen Dateialias reload_profile = ". ~ / .profile "# Mac bleiben sehr oft stecken und sind beim Herunterfahren extrem langsam und instabil. Dies erzwingt ein Herunterfahren. alias poweroff =" sudo / sbin / shutdown -h now "# Einstellung für die neue UTF-8-Terminalunterstützung in Lion / Mountain Lion export LC_CTYPE = de_US.UTF-8 export LC_ALL = de_US.UTF-8 # Fügt der PATH-Variablen alle diese Pfade hinzu. Der Doppelpunkt (:) ist das Trennzeichen für den Pfad. # Wenn Sie dem Pfad "etwas hinzufügen" müssen Sie sollten den Pfad zur ausführbaren Datei dieser Liste von Pfaden hinzufügen, getrennt durch einen Doppelpunkt. export PATH = "/ usr / local / bin: / usr / local / sbin: / usr / bin: / bin: / usr / sbin: / sbin: / usr / X11 / bin "
Unabhängig davon, ob Sie das Terminal verwenden, ist die .profile-Datei für Ihr Leben unendlich viel einfacher. Wenn Sie Ihre am häufigsten verwendeten Befehle an einem Ort haben, wo Sie sie nicht nur sehen können, wenn Sie einige vergessen, sondern sie auch automatisch bei jedem Login laden, kann dies die Arbeitszeit in wenigen Wochen reduzieren.
Das Beste ist, die meisten Befehle sind * nix-kompatibel. Sie können die Datei also nicht nur auf eine andere OS X-Maschine mitnehmen, sondern auch in Ihre Linux-Maschinen einschließen, wenn Sie welche verwenden. Mit der .profile-Datei ist das Geschwindigkeits-Upgrade Ihres Workflows in einer einzigen Datei enthalten, die Sie problemlos mitnehmen können.
Spielen Sie damit herum, stellen Sie sich weitere Aliasnamen zusammen, die nützlich sein könnten (z. B. mit einem einzigen Befehl versteckte Dateien anzeigen / ausblenden - ich lasse Sie dies selbst herausfinden), und erhöhen Sie die Geschwindigkeit Ihres Workflows.