Die Bash - Für Normalsterbliche

Hinweis: In dem Thema Die Bash - Für Normalsterbliche gibt es 23 Antworten auf 3 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • Kurze Einleitung:


    Linux (also auch openSUSE), kann wie jedes UNIX-Artige Betriebssystem komplett aus der Konsole bedient werden.
    Viele Profis sind der Meinung das ein grafischer Desktop, auf einem Server - weniger aber auch möglich auf dem Desktop - nichts verloren hat.


    openSUSE setzt standardmäßig die bekannte Konsole "Bash" ein.
    (Bourne-Again Shell)


    Tatsächlich gibt es praktisch nichts, was sich nicht auf der Bash erledigen ließe.


    Dieser Thread behandelt nur die Grundlagen.


    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    6 Mal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 30722 haftet ausdrücklich der jeweilige Autor: lush


  • Der Befehl man steht für "manual", zu deutsch Handbuch, er zeigt die Hilfe ("Manpage") eines Programmes an.
    man steht vor dem eigentlichen Befehl, Bsp:

    Code
    man man


    Zum verlassen eines Manuals innerhalb der Bash, wird die Taste q genutzt.



    Der Befehl --help ist so etwas wie ein "abgespecktes" man, es gibt nur die verfügbaren Optionen zu einem
    gewählten Befehl aus.
    Beispiel:


    Code
    man --help


    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    4 Mal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 30723 haftet ausdrücklich der jeweilige Autor: lush


  • Wenn eine Bash geöffnet wird, ist sie Standardmäßig im Home-Verzeichnis.
    Wenn man nun aber das Verzeichnis wechseln will (was man recht oft muss), verwendet man den Befehl

    Code
    cd


    cd folgt folgendem Syntax:

    Code
    cd [Verzeichnisname]


    Wenn man nun in das Verzeichnis "Dokumente" wechseln will, verwendet man daraus folgend:

    Code
    cd Dokumente/


    Alternativ kann man auch den vollständigen Pfad angeben:

    Code
    cd /home/BENUTZERNAME/Dokumente/


    Desweiteren gibt es den Befehl cd .. ,mit dem man in das Verzeichnis wechselt, das eine Ebene über dem aktuellen Verzeichnis liegt:

    Code
    [tim@linux ~]$ cd Dokumente/
    [tim@linux Dokumente]$ cd ..
    [tim@linux ~]$


    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    5 Mal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 30724 haftet ausdrücklich der jeweilige Autor: lush

  • Der Befehl pwd gibt den aktuellen absoluten Verzeichnispfad aus, in dem gearbeitet wird.


    Im Beispiel wechsel ich nun in das Dokumente Verzeichnis:

    Code
    [tim@linux ~]$ pwd
    /home/tim
    [tim@linux ~]$ cd Dokumente/
    [tim@linux Dokumente]$ pwd
    /home/tim/Dokumente
    [tim@linux Dokumente]$


    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    Einmal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 30728 haftet ausdrücklich der jeweilige Autor: lush

  • Der Befehl ls gibt den Inhalt eines Verzeichnisses aus.

    Beispiel der Home-Ordner:

    Code
    [tim@linux ~]$ ls
    Arbeitsfläche/ Downloads@ Musik@ Videos@
    Bilder@ Projects@ VirtualBox VMs/
    Dokumente@ minecraft.jar tmp/
    [tim@linux ~]$



    ls folgt also folgendem Syntax:

    Code
    ls [Verzeichnisname]


    Alternativ kann man wieder den absoluten Pfad angeben.


    Zu dem ls-Befehl, gibt es die häufig benutzten Parameter -l ; -a.
    -l == langes Format; -a == alle Dateien.


    Beispiel /tmp:


    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    Einmal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 30729 haftet ausdrücklich der jeweilige Autor: lush

  • Der Befehl cp dient zum kopieren von Daten.
    Syntax:

    Code
    cp [Quelle] [Ziel]


    Zu dem Befehl cp gibt es die Parameter -a == Archiv Modus (u.a. Unterverzeichnisse mitkopieren)
    Der Parameter -R kopiert Dateien Rekursiv, sprich auch alle in einem Verzeichnis liegenden Dateien/Ordner etc. Wenn man also ein Verzeichnis mit Inhalt kopieren will, funktioniert das so:

    Code
    cp -R [Quelle] [Ziel]


    Im ersten Beispiel wird die Datei "minecraft.jar" aus dem HOME-Verzeichnis in Downloads/ kopiert:


    Code
    [tim@linux ~]$ ls
    Arbeitsfläche/ Downloads@ Musik@ Videos@
    Bilder@ mcpatcher-2.2.2.jar Projects@ VirtualBox VMs/
    Dokumente@ minecraft.jar tmp/
    [tim@linux ~]$ cp minecraft.jar Downloads/
    [tim@linux ~]$


    Im Zweiten Beispiel wird das ganze Verzeichnis "Dir" in Downloads/ kopiert:

    Code
    [tim@linux ~]$ ls
    Arbeitsfläche/ Dokumente@ minecraft.jar tmp/
    Bilder@ Downloads@ Musik@ Videos@
    Dir/ mcpatcher-2.2.2.jar Projects@ VirtualBox VMs/
    [tim@linux ~]$ cp -a Dir/ Downloads/
    [tim@linux ~]$

    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    2 Mal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 30730 haftet ausdrücklich der jeweilige Autor: lush

  • Der Befehl mv bietet die Möglichkeit Daten zu verschieben.


    Syntax:

    Code
    mv [Quelle] [Ziel]


    Zu dem Befehl mv gibt es den Parameter -i == interaktiv:
    Vor dem Überschreiben von Daten Rückfragen.


    Im Beispiel wird die Datei "minecraft.jar" aus dem HOME-Verzeichnis in Downloads/ verschoben:

    Code
    [tim@linux ~]$ ls
    Arbeitsfläche/ Downloads@ Musik@ Videos@
    Bilder@ mcpatcher-2.2.2.jar Projects@ VirtualBox VMs/
    Dokumente@ minecraft.jar tmp/
    [tim@linux ~]$ mv minecraft.jar Downloads/
    [tim@linux ~]$


    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    Einmal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 30731 haftet ausdrücklich der jeweilige Autor: lush

  • Der Befehl rm dient zum löschen von Daten.


    Syntax:

    Code
    rm [Dateiname1] [Dateiname2] [Dateiname n]


    Der Befehl rm bietet zwei Parameter:

    Code
    -f == force
    (löschen erzwingen)


    Code
    -r == rekursiv
    (Gesamter Inhalt eines Verzeichnisses löschen)


    Im Beispiel wird die Textdatei "rm" aus dem HOME-Verzeichnis gelöscht:


    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    2 Mal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 30732 haftet ausdrücklich der jeweilige Autor: lush

  • Der Befehl chmod ändert Schreib (w) .- Lese (r),- Ausführrechte (x) für Besitzer (u), Gruppe (g),
    Rest der Welt (o)und/oder alle (a).


    Syntax:

    Code
    chmod [ugoa][+-=][rwx] Datei



    Zu dem Befehl chmod, gibt es die Parameter:

    Code
    [ugoa][+-=][rwx] +
    + == hinzufügen


    Code
    [ugoa][+-=][rwx] -
    - == entfernen


    Code
    [ugoa][+-=][rwx] =
    = == gleichsetzen


    Im Beispiel wird jedem der in der Gruppe user ist - Write, Read, Execute-Rechte -
    für die Datei minecraft.jar hinzugefügt:

    Code
    [tim@linux ~]$ chmod u+rwx minecraft.jar
    [tim@linux ~]$


    Die häufig genutzte Option -R oder --recursive ändert die Rechte von Dateien rekursiv.

    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    3 Mal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 30733 haftet ausdrücklich der jeweilige Autor: lush

  • Mit dem Befehl chown kann man den Besitzer von Dateien festlegen.


    Syntax:

    Code
    chown User:Gruppe [Datei]


    Im Beispiel wird der User tim aus der Gruppe users Besitzer der Datei chown.txt:

    Code
    [tim@linux ~]$ chown tim:users chown.txt
    [tim@linux ~]$


    Die häufig genutzte Option -R oder auch --recursive ändert den Eigentümer von Dateien/Verzeichnissen rekursiv.

    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    3 Mal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 30734 haftet ausdrücklich der jeweilige Autor: lush