ifun.de — Apple News seit 2001. 38 033 Artikel
   

Das Mac OS X Terminal – Teil 2: Die „.profile“-Datei (Video)

Artikel auf Mastodon teilen.
25 Kommentare 25

Aufsetzend auf unsere Vorbereitung vom 23. Mai, widmen wir uns im heutigen zweiten Teil der ifun Terminal-Serie der persönlichen „.profile“-Datei. Vor dem Weiterlesen empfiehlt sich also der Abstecher zu Teil eins: Das Mac OS X Terminal – Vorbereitung mit Xcode-Tools.

Die im OS X Benutzer-Ordner versteckt abgelegte Konfigurationsdatei „.profile“ wird bei jeder Terminal-Session geladen und kann mit einem einfachen Text-Editor bearbeitet werden. In der Textdatei lassen sich Alias-Befehle, Funktionen, grundlegende Layout-Einstellungen und Abkürzungen ablegen die euch die Arbeit im Terminal vereinfachen und im besten Fall erheblich beschleunigen. Zudem merkt sich die „.profile“-Datei lange Zeichenketten, Parameter und Attribute, damit ihr dies nicht machen müsst.

Suchen, erstellen, editieren

Da die „.profile“-Datei mit einem Punkt im Namen anfängt, ignoriert der Mac-Finder die Konfigurationsdatei beim Stöbern im entsprechenden Ordner und zeigt diese von Haus aus nicht an. Anstatt die Anzeige versteckter Dateien zu erzwingen, empfehlen wir den Griff zum Gratis-Werkzeug „muCommander„.

Der kostenlose Mac-Dateibrowser zeigt alle Dateien im Benutzerordner an und bringt sogar einen einfachen Text-Editor mit der das schnelle Bearbeiten ermöglicht.

Abhängig vom eigenen Setup kann es sein, dass die „.profil“-Datei auf eurem Mac noch gar nicht existiert. Solltet ihr die „.profile“-Datei im Benutzerordner also nicht finden, erstellt einfach eine leere Textdatei und nennt diese in „.profile“ um.

Aliasse und Funktionen

Selbst definierte Aliasse dürften der wohl gängigsten Inhalt persönlich erstellter „.profile“-Dateien sein. Über die schnellen Abkürzungen könnt ihr beliebige Befehlen (inklusive ihrer Parameter) mit einem knackigen Alias ersetzen.

Ein Alias-Beispiel: Der Befehl „clear“ löscht den Inhalt der aktuellen Terminal-Fensters und hilft beim Arbeiten in der Kommandozeile dabei, die Übersicht zu behalten. Um das Wort „clear“ jedoch nicht immer ausschreiben zu müssen könnt ihr eure „.profile“-Datei um die Zeile

alias c="clear"

erweitert. Zukünftig reicht dann die Eingabe des Buchstaben „c“ und der Druck auf Enter um das „clear“-Kommando abzusetzen.

Funktionen übernehmen in der einfachsten Variante eine Alias-ähnliche Aufgabe, erlauben jedoch eine größere Interaktion. So ersetzen Funktionen nicht nur Kommandos, sondern können auch Verzeichnis-Pfade und Web-Links übergeben.

Ein Funktions-Beispiel:
Das Kommando „man“ zeigt euch die Handbuch-Seiten ausgewählter Kommandos an. Gibt man „man clear“ im Terminal ein, erklärt das Handbuch die Aufgabe des gerade besprochenen Aufräum-Befehls. Mac-Nutzer können sich die Anleitungen – wesentlich lesefreundlicher – aber auch in Vorschau anzeigen lassen. Dafür bauen wir uns die Funktion „pman„. Die wir jetzt Teil für Teil aufdröseln. „pman(){“ eröffnet die Funktion, „man -t“ ruft die Handbuchseite in druckfähiger Form auf. „$@“ ist der Platzhalter den wir immer dann befüllen wenn wir die Funktion aufrufen. Das „|„-Symbol übergibt die Seite an den „open“-Befehl der am Ende der Funktion die Vorschau-App öffnet. Sind also die folgenden vier Zeilen in eurer „.profile“-Datei eingetragen:

pman()
{
man -t "$@" | open -f -a /Applications/Preview.app/
}

Könnt ihr anstatt „man clear“ auch „pman clear“ eingeben und ruft so die gerade erstellte „pman“-Funktion auf, die euch die Handbuch-Seite druckerfreundlich ausgibt.

Unser Video – Youtube-Link

Am besten lernt man von Beispielen. In den folgenden 20 Video-Minuten gehen wir unsere persönliche „.profile“-Datei Schritt für Schritt durch und erklären das gewählte Setup anhand einiger Live-Beispiele. Die komplette „.profile“-Datei haben wir zudem hier abgelegt und im Anschluss eingebettet.


(Direkt-Link)

Bis zum 2. Teil

Wenn ihr bis hierhin mitgelesen habt, sehen wir uns in den nächsten Tagen zum 3. Teil wieder und werfen dann einen genaueren Blick auf die Installation kleiner Terminal-Werkzeuge und den Einsatz eben dieser. Dann lassen wir auch dem Youtube-Download, webkit2png und rtmpdump die Aufmerksamkeit zukommen, die sie verdient haben.

Die .profile-Datei aus dem Video

Dieser Artikel enthält Affiliate-Links. Wer darüber einkauft unterstützt uns mit einem Teil des unveränderten Kaufpreises. Was ist das?
15. Jun 2012 um 23:45 Uhr von Nicolas Fehler gefunden?


    Zum Absenden des Formulars muss Google reCAPTCHA geladen werden.
    Google reCAPTCHA Datenschutzerklärung

    Google reCAPTCHA laden

    25 Kommentare bisher. Dieser Unterhaltung fehlt Deine Stimme.
  • Top Workaround, weiter so. Würde mich über mehr solcher, auf Comandozeile, basierter Anleitungen freuen. Auch Einsteiger Lesestoff/link’s können gerne gepostet werden, Hauptsache Terminal.

  • Super erklärt!

    Ich habe mir viele Anregungen geholt und freue mich auf die Fortsetzung.

  • Erstmal ein super Lob für dieses Serie! Auch wenn ich bisher noch nicht so viel lernen konnte, echt gut erklärt und gute Punkte ausgewählt.
    Ich hätte aber eine ganz andere Frage, womit werden die Ordner und Dateien auf dem Schreibtisch so cool animiert bewegt?

  • Super Tip mit der Profile-Datei.
    Aber gerade die ersten Aliasse wie ‚df‘ oder ‚ls‘ halte ich für bedenklich, da man auf fremden Systemens sehr „verwirrt“ werden könnte, gerade Anfänger!

  • Sehr guter Artikel!

    Was mich mal interessiert:
    Wenn ich irgendwelche Scripte schreibe, wie kann ich da bestimmte Kommandos hervorheben wie zum Beispiel echo?

    Hab leider nur einen Weg gefunden (noch nicht ausprobiert), wo man in jedes Script erst etliche Code-Zeilen packen muss.
    Auf der Arbeit haben wir das auch farbig, aber nicht in jedem Script diese Farbcodes drin.

    Hat da jemand nen Tipp?

  • Ich kann jedem nur empfehlen auf zsh in Kombination mit ohmyzsh zu setzen. Sehr praktische Plugins für gut und homebrew!

  • Hab das Video noch nicht komplett gesehen aber wen es interessiert:

    Das Terminal lässt sich auch mit CTRL+L leeren

    min3z

  • kann mir bitte jemand den platzhalter „$@“ erklären? :D

    • das ist ein Platzhalter für die Eingabe durch den Benutzer, die übergeben wird. z.B.:

      Du gibst ein: „pman fdsik“
      bearbeitet wird dann „man -t $@“
      wobei hier ist $@ = fdisk, da dies ja eine Variable ist.

      Bin mir nicht sicher, ob ich das jetzt verständlich erklärt habe ;)

      Gruß
      min3z

  • Super Tip!

    Aber wie kann man denn den Dateinamen neben dem Dateisymbol anordnen, wie es auf dem Desktop im Video zu sehen ist?

  • Moin,
    ebenfalls eine gute Alternative zu den Aliassen ist die reverse Suche der Shell.

    Wenn ich in einem leeren prompt CTRL+R drücke, komme ich in den reverse search modus. Nun kann ich durch die Eingabe eines beliebigen Strings die komplette History nach einem Befehl durchsuchen, der diesen Teilstring enthält.

    Beispiel: „ls“ habe ich bei der Suche eingegeben. Zuletzt kam dieser String in dem vorher abgesetzten Befehl „ls -al“ vor -> ls -al wird mir nun vorgeschlagen.

    Es ist auch möglich zeitlich weiter zurück zu suchen, indem man erneut CRTL+R drückt.

    Man spart dadurch unheimlich viel Zeit, denn man gibt nicht immer und immer wieder die gleichen Kommandos komplett neu ein – ähnlich wie bei den Aliassen, nur noch n ticken eleganter;)

    Ansonsten: Danke für das Video, die Möglichkeit mit den Funktionen kannte ich auch noch nicht!

  • Danke für die Inspiration. Habe meine .profile darauf hin gleich angepasst. Und habe dazu noch die Idee mit dem youtube-dl übernommen und eine GUI mit Applescript erstellt.
    Das einzige was mich irritiert, meine directories werden nicht farbig angezeigt. Den Fehler suche ich noch.

    Thx
    Podder

  • Moinsen,

    ich habe dann doch noch ein bis zwei Frage. Vielleicht kann mir da mal einer auf die Sprünge helfen. Ich habe auf meinem Rechner auch Handbrake installier kann aber über den Standard Pfad nich darauf zugreifen und das Programm selber ist ja auch im App Bündle versteckt. Muss ich nun den ganzen Pfad angeben (in das Bündle hinein) oder gibt es da auch eine elegantere Methode. Kann mir an dieser Stelle jemand helfen ?

    Thx in advance

    Podder

  • Hallo Leute,
    auch von meiner Seite besten Dank für dieses Tutorial!
    Ich hab mir das Video mit großem Interesse angeschaut, die hier abgebildete .profile Datei geladen und in meinem user Verzeichnis angelegt.

    Wenn ich nun ein Terminal starte bekomme ich 30 mal : command not found
    Danach erst den Prompt und ich kann die Aliasse und Funktionen nicht verwenden.

    Command Line Tools sind installiert
    Solarized und TotalTerminal ebenfalls.

    Wahrscheinlich ein einfach zu lösendes Problem aber ich komm leider nicht weiter.
    Wäre dankbar für Hilfe.

    Liebe Grüße
    AlexBear

    • Nachdem ich keine Antwort erhalten habe, blieb mir leider nichts anderes übrig als zu forschen und zu suchen bis ich die Lösung gefunden habe, die ich gern mit euch teilen möchte, vielleicht hatte das Problem ausser mir ja noch der ein oder andere…

      Die hier dargestellte .profile Datei wurde mir von meinem Safari mit Windows Zeilenenden präsentiert. Den Unterschied sieht man jedoch nicht auf den ersten Blick denn auch UNIX bricht diese Zeilenenden um, behandelt sie jedoch anders.

      Dies führte dazu, dass die Kommandos nicht ausgeführt und command not found dargestellt wurde.

      Ich habe mit meinem genialen Entwickler-Tool Coda 2 über die Datei geschaut und und die Endungen einfach ins UNIX Format konvertiert und siehe da: läuft wie beschrieben :-)

      Liebe Grüße

      • Hallo Alex,
        Habe genau das gleiche Problem, nur komme ich mit der Lösungsbeschreibung nicht zurecht. Habe mir zwar den Coda 2 runtergelassen aber bin nicht weitergekommen. Könntest Du vielleicht noch eine kleine Anleitung geben?

        Dank und Gruß
        Kurt

  • Hi,

    ich habe die Funktion ausprobiert.

    # Datei an Handbrake weitergeben, mit iPad-Settings konvertieren, auf Desktop ablegen, mit Datum im Namen
    hb() {
    handbrake -i $PWD/“$@“ -Z iPad -o ~/Desktop/iPad_$(date +%Y%m%d).mp4;
    }

    Diese ist aber fürs iPad optimiert. Kann man die Befehlszeile so umschreiben damkit fürs iPhone optimierte mp4 Dateien erstellt werden?

    MfG
    Willly

  • Super Arbeit.. vielen Dank dafür!

    Bin so auf Teil 3 gespannt. Ab wann kann man denn damit rechnen?

  • Hi @all,
    nachdem ich Python installiert habe, und die „youtube-dl.txt“ runtergeladen und in *.py umbenannt habe, habe ich die Datei erst auf chmod 755 gestellt und dann in „sodu cp….. /usr/bin/“ copiert.

    Wenn ich jetzt versuche das Programm zu starten, bekomme ich folgende Fehlermeldung: „-bash: youtube-dl command not found“

    Kann mir bitte jemand weiterhelfen?

    Vielen Dank
    Angelo

  • Danke

    tolle Einführung

    (wann) kommt noch eine Fortsetzung?

  • MOIN Moin kurze Frage
    ich kopiere deine profile dabei und hau sie bei mit in den terminal.
    Speicher die dann als .profile auf meinen benutzer.
    jetzt zeigt mir de mucommander auch an das die da ist.
    wenn ich aber jetzt den terminal beende und neustarte ist kein alias und nix gespeichert…
    HIILLFFEE

  • Redet mit. Seid nett zueinander!

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

    ifun.de ist das dienstälteste europäische Onlineportal rund um Apples Lifestyle-Produkte.
    Wir informieren täglich über Aktuelles und Interessantes aus der Welt rund um iPad, iPod, Mac und sonstige Dinge, die uns gefallen.
    Insgesamt haben wir 38033 Artikel in den vergangenen 8219 Tagen veröffentlicht. Und es werden täglich mehr.
    ifun.de — Love it or leave it   ·   Copyright © 2024 aketo GmbH   ·   Impressum   ·   Cookie Einstellungen   ·   Datenschutz   ·   Safari-Push aketo GmbH Powered by SysEleven