Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Linux bändigen - Tipps und Tricks für die Kommandozeile

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Linux bändigen - Tipps und Tricks für die Kommandozeile

    This topic has been deleted. Only users with topic management privileges can see it.
    • Thomas Braun
      Thomas Braun Most Active last edited by Thomas Braun

      Da ja immer behauptet wird, das man mit einer handvoll an Linux-Kommandos schon recht weit beim bändigen des zickkigen Pinguins auf der Kommandozeile kommt hier mal ein paar dieser geheimnisvollen Befehle für den täglichen Umgang:

      • ls -lh
        LiSted den Inhalt eines Verzeichnisses auf. Mit der Option -l dann auch mit Details wie den Rechten, den Besitzern usw.
        Option -h macht die Dateigröße besser lesbar für Menschen.

      • cd /pfad/zum/ziel
        Mit change directoy wechselt man in das angegebene Verzeichnis. Ein cd ohne weitere Angaben springt immer in das Heimatverzeichnis das Users zurück. Mit cd - kehrt man zum vorherigen Verzeichnis zurück. Mit cd .. geht man in das übergeordnete Verzeichnis.

      Beispiel:

      echad@chet:~ $ cd /opt/iobroker/
      echad@chet:/opt/iobroker $ cd
      echad@chet:~ $ cd -
      /opt/iobroker
      echad@chet:/opt/iobroker $
      echad@chet:/opt/iobroker $ cd ..
      echad@chet:/opt $ 
      
      • pwd
        Verirrt im Verzeichnisbaum? Mit print working directory sieht man, wo man im absoluten Pfad gerade steht. Nützlich, wenn man zuvor mit cd wild umher gesprungen ist.

      • mkdir unterverzeichnis
        make directory
        Legt im aktuellen Verzeichnis ein Unterverzeichnis namens 'unterverzeichnis' an.
        Beispiel:
        Wir legen in einem Rutsch zwei Verzeichnisse an. Es handelt sich um zwei vollkommen unterschiedliche Verzeichnisse, Linux ist immer 'case sensitive', weswegen man es in der Regel möglist einfach und einheitlich hält und in solchen Namen keine Großbuchstaben, keine Sonderzeichen (wie z. B. Umlaute) und auch keine Leerzeichen verwendet. Macht alles den Umgang später unnötig kompliziert.

      echad@chet:~ $ mkdir unterverzeichnis Unterverzeichnis
      echad@chet:~ $ ls -l
      total 52
      
      drwxrwxr-x 2 echad echad  4096 Oct 12 13:37 unterverzeichnis
      drwxrwxr-x 2 echad echad  4096 Oct 12 13:37 Unterverzeichnis
      echad@chet:~ $
      
      • touch
        Legt eine leere Datei an.
        Beispiel:
      echad@chet:~ $ cd unterverzeichnis/
      echad@chet:~/unterverzeichnis $ touch testdatei
      echad@chet:~/unterverzeichnis $ ls 
      testdatei
      echad@chet:~/unterverzeichnis $
      
      • cp + mv
        copy und move sind eng verwandt.
        cp kopiert eine Datei, mv verschiebt eine Datei und löscht die ursprüngliche Datei. Wenn man dabei innerhalb des gleichen Verzeichnisses bleibt wird die Datei nur umbenannt.
        Beispiel:
      echad@chet:~/testverzeichnis $ cp testdatei testdatei_kopie
      echad@chet:~/testverzeichnis $ ls 
      testdatei  testdatei_kopie
      echad@chet:~/testverzeichnis $ mv testdatei testdatei2
      echad@chet:~/testverzeichnis $ ls 
      testdatei2  testdatei_kopie
      echad@chet:~/testverzeichnis $
      
      • rm
        remove löscht Dateien. Verzeichnisse lassen sich nur mit der Option -r rekursiv löschen. Vorsichtig damit! Leicht löscht man damit zuviel. Mit der Option -i fragt das System interaktiv nach, ob es okay ist zu löschen.
        Beispiel:
      echad@chet:~/testverzeichnis $ cd ..
      echad@chet:~ $ rm -ri testverzeichnis/
      rm: descend into directory 'testverzeichnis/'? y
      rm: remove regular empty file 'testverzeichnis/testdatei2'? y
      rm: remove regular empty file 'testverzeichnis/testdatei_kopie'? y
      rm: remove directory 'testverzeichnis/'? y
      echad@chet:~ $ 
      
      • clear
        Räumt in der Konsole auf und sorgt für eine einzelne Eingabezeile.

      • df -h
        disk free zeigt die aktuelle Datenmenge auf den Datenträgern. -h liefert das ganze dann menschenlesbar.
        Es werden auch virtuelle/temporäre Dateisysteme angezeigt, diese spielen aber bei der tatsächlichen Auslastung der Hardware keine Rolle. Alle physischen Partitionen fangen mit /dev an.

      • sudo
        Mit substitute user do kann man (wenn es zuvor eingerichtet wurde) aus seiner userrolle in einen anderen User wechseln. Ohne Option wechselt man zum root, mit -u kann man einen anderen User auswählen.
        Der nachfolgende Befehl wird dann mit den Rechten die dieser User hat ausgeführt:
        Beispiel mit 'whoami':

      echad@chet:~/unterverzeichnis $ whoami
      echad
      echad@chet:~/unterverzeichnis $ sudo -u iobroker whoami
      iobroker
      echad@chet:~/unterverzeichnis $ sudo whoami
      root
      echad@chet:~/unterverzeichnis $
      

      Auf diese Weise kann man ganz schnell root-Rechte erlangen und fällt dann sofort wieder in seine normale Rolle zurück.
      Jetzt soll man natürlich nicht jegliches Kommando mit sudo einleiten. Man agiert immer mit so wenig Rechten wie gerade notwendig ist. Also grundsätzlich als normaler User. Falls das System uns ausbremst, weil wir die erforderlichen Rechte nicht haben setzt man das Kommando nochmal mit vorangestelltem sudo ab. Wenn man das ganze Kommando nicht nochmal wiederholen will oder aus der Historie (Pfeil nach oben...) zurückholt verwendet man sudo !! als Kürzel:

      Beispiel:

      echad@chet:~/unterverzeichnis $ apt update
      Error: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)
      Error: Unable to lock directory /var/lib/apt/lists/
      Warning: Problem unlinking the file /var/cache/apt/pkgcache.bin - RemoveCaches (13: Permission denied)
      Warning: Problem unlinking the file /var/cache/apt/srcpkgcache.bin - RemoveCaches (13: Permission denied)
      echad@chet:~/unterverzeichnis $ sudo !!
      sudo apt update
      Hit:1 http://deb.debian.org/debian bookworm InRelease
      Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [43.5 kB]                                                                       
      Hit:3 http://phoscon.de/apt/deconz bookworm InRelease                                                                                                 
      Hit:4 http://phoscon.de/apt/deconz bookworm-beta InRelease                                                                                            
      Get:5 https://cli.github.com/packages stable InRelease [3,917 B]                                                                                      
      Hit:6 http://archive.raspberrypi.com/debian bookworm InRelease                                                                                        
      Hit:7 http://deb.debian.org/debian bookworm-updates InRelease                                                                                           
      Hit:8 https://repos.influxdata.com/debian stable InRelease                                                                                            
      Hit:9 https://apt.grafana.com stable InRelease                                                                                                        
      Hit:10 https://deb.nodesource.com/node_20.x nodistro InRelease                                                                                        
      Get:11 https://pkgs.tailscale.com/stable/debian bookworm InRelease                                                                                      
      Hit:12 https://packages.redis.io/deb bookworm InRelease                                                               
      Hit:13 https://packagecloud.io/ookla/speedtest-cli/debian bookworm InRelease                     
      Fetched 54.0 kB in 2s (22.2 kB/s)
      All packages are up to date.    
      echad@chet:~/unterverzeichnis $
      
      1 Reply Last reply Reply Quote 8
      • Jey Cee
        Jey Cee Developer last edited by

        • --help
          Mit dem Parameter "--help" wird die Hilfe zu einem Befehl angezeigt. Darin enthalten sind fast immer alle Parameter mit Kurzbeschreibung.

        Beispiel:

        christoph@christoph-desktop:~$ mkdir --help
        Aufruf: mkdir [OPTION]... VERZEICHNIS...
        Erzeugen der/des Verzeichnisse(s), wenn sie noch nicht existieren.
        
        Erforderliche Argumente für lange Optionen sind auch für kurze erforderlich.
          -m, --mode=MODUS  Zugriffsrechte setzen (wie bei chmod), nicht a=rwx − umask
          -p, --parents     kein Fehler, wenn vorhanden; übergeordnete
                              Verzeichnisse erzeugen, wenn notwendig
          -v, --verbose     für jedes angelegte Verzeichnis eine Meldung ausgeben
          -Z                SELinux-Sicherheitskontext jedes erzeugten Verzeichnisses
                            auf den Standardtyp setzen
              --context[=KTXT] wie -Z, oder, wenn angegeben den SELinux- oder SMACK-
                            Kontext auf KTXT setzen
              --help     diese Hilfe anzeigen und beenden
              --version  Versionsinformation anzeigen und beenden
        
        Onlinehilfe für GNU coreutils: <https://www.gnu.org/software/coreutils/>
        Melden Sie Übersetzungsfehler für %s an <translation-team-de@lists.sourceforge.net>
        Die vollständige Dokumentation ist hier: <https://www.gnu.org/software/coreutils/mkdir>
        oder auch lokal mittels „info '(coreutils) mkdir invocation'“
        
        
        1 Reply Last reply Reply Quote 3
        • First post
          Last post

        Support us

        ioBroker
        Community Adapters
        Donate

        928
        Online

        31.7k
        Users

        79.7k
        Topics

        1.3m
        Posts

        3
        2
        287
        Loading More Posts
        • Oldest to Newest
        • Newest to Oldest
        • Most Votes
        Reply
        • Reply as topic
        Log in to reply
        Community
        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
        The ioBroker Community 2014-2023
        logo