Allgemeine Befehle - alphabetisch: Unterschied zwischen den Versionen

Aus Mediawiki Ferdinand Gruber
Zur Navigation springen Zur Suche springen
Die Seite wurde neu angelegt: „ == at == * Befehl zu einer bestimmten Zeit ausführen Einen bestimmten Befehl um 23:00 ausführen at 23:00 Es erscheint der at-Prompt zur Eingabe eines Befe…“
 
 
(13 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:


== at ==
== at ==
* Befehl zu einer bestimmten Zeit ausführen
Einen Befehl zu einer bestimmten Zeit ausführen
Einen bestimmten Befehl um 23:00 ausführen
* <tt>atd</tt> starten
service atd start
* Anwendungsbeispiele
# at Uhrzeit Datum
  at 23:00  
  at 23:00  
Es erscheint der at-Prompt zur Eingabe eines Befehls. Eingabe abschließen mit '''STRG + D'''. Der Befehl wird unter einer Jobnummer gespeichert in
at 06:00 2023-08-09
Es erscheint der <tt>at-Prompt</tt> zur Eingabe eines Befehls. Eingabe abschließen mit '''STRG + D'''. Der Befehl wird unter einer Jobnummer gespeichert in
  /var/spool/atjobs
  /var/spool/atjobs
* Job löschen
* Job löschen
Beispiel: Job Nr. 3 löschen
# Job Nr. 3 löschen
  atrm 3  
  atrm 3  
* Jobs anzeigen
* Jobs anzeigen
Zeile 33: Zeile 37:
  mount /proc
  mount /proc
  mount /sys
  mount /sys
wenn in /mnt ein Linux Rootsystem gemountet ist
... wenn in /mnt ein Linux Rootsystem gemountet ist


== date ==
== date ==
Zeile 103: Zeile 107:
* Nur in bestimmten Dateien suchen
* Nur in bestimmten Dateien suchen
  grep -r --include "*.php" Suchtext /www/HS_Server/
  grep -r --include "*.php" Suchtext /www/HS_Server/
* Suchbegriff enthält Sonderzeichen
Suchbegriff in singleQuotes setzen und vor jedes Sonderrzeichen einen Backslash
# Beispiel
grep '\-!\-' *.php


== hwinfo ==
== hwinfo ==
Zeile 117: Zeile 125:
Folgendes Script konvertiert alle html-Dateien und php-Dateien im aktuellen Verzeichnis:
Folgendes Script konvertiert alle html-Dateien und php-Dateien im aktuellen Verzeichnis:
  /usr/local/bin/iconv.sh
  /usr/local/bin/iconv.sh
== loadkeys ==
loadkeys de
Deutsche Tastatur laden


== lpr ==
== lpr ==
Zeile 198: Zeile 202:


== sudo ==
== sudo ==
* Mit sudo kann ein Befehl unter einem anderen Benutzer ausgeführt werden, typischerweise als root.
Mit sudo kann ein Befehl unter einem anderen Benutzer ausgeführt werden, typischerweise als root.
  sudo befehl
  sudo befehl
  # oder
  # oder
  sudo -u username befehl
  sudo -u username befehl
 
Mit dem Kommando  
* Mit dem Kommando  
  visudo  
  visudo  
kann man die Datei <code>/etc/sudoers</code> bearbeiten
kann man die Datei <code>/etc/sudoers</code> bearbeiten


* Beispiel:
=== Einen anderen Editor für visudo verwenden ===
  # Shutdown für die  Gruppe users erlauben:
Einen Alias anlegen und diesen in <tt>/root/.bashrc</tt> eintragen.
  # tilde als Editor für visudo verwenden
alias visudo='export VISUAL=tilde; visudo'
 
=== Beispiele ===
==== Shutdown für die  Gruppe users erlauben ====
  %users  localhost=/sbin/shutdown -h now
  %users  localhost=/sbin/shutdown -h now


  # ... für alle:
  # ... für alle:
  ALL  localhost=/sbin/shutdown -h now  
  ALL  localhost=/sbin/shutdown -h now  
=== Script für chown ===
Das Kommando <tt>chown</tt> kann normalerweise nur der Benutzer '''root''' ausführen.
# chown.sh
user=$1
group=$2
filePattern=$3
chown $user.$group $filePattern
Das Script speichern als <tt>/usr/local/bin/chown.sh</tt>. Man kann es als normaler User aufrufen bzw. in einem Script verwenden, wenn man folgende Zeile zu <tt>/etc/sudowers</tt> hinzufügt:
myusername  ALL = (root) NOPASSWD:/usr/local/bin/chown.sh
Aufruf des Scripts vor dem Upload von Dateien zum Webhost.
# Beispiel
sudo chown.sh wwwrun www *.php
Es erfolgt keine Passwortabfrage. Es kann also der Eigentümer der Dateien ohne root-Rechte geändert werden.


* Hier findet man eine gute Anleitung: http://www.gentoo.org/doc/de/sudo-guide.xml#doc_chap3
=== Info ===
Hier findet man eine gute Anleitung: http://www.gentoo.org/doc/de/sudo-guide.xml#doc_chap3


== uname ==
== uname ==

Aktuelle Version vom 7. Januar 2025, 22:07 Uhr

at

Einen Befehl zu einer bestimmten Zeit ausführen

  • atd starten
service atd start
  • Anwendungsbeispiele
# at Uhrzeit Datum
at 23:00 
at 06:00 2023-08-09

Es erscheint der at-Prompt zur Eingabe eines Befehls. Eingabe abschließen mit STRG + D. Der Befehl wird unter einer Jobnummer gespeichert in

/var/spool/atjobs
  • Job löschen
# Job Nr. 3 löschen
atrm 3 
  • Jobs anzeigen
atq

alias

  • Aufruf von Linux Kommandos in verkürzter Form

Beispiele:

alias wol_backup="wol 00:18:F3:23:BD:B8"
alias lpr="lpr -o page-left=30 -o page-top=40"
  • Aliases dauerhaft speichern in
~/.bashrc

Gespeicherte Aliases aufrufen durch

alias
  • Alias löschen
# Beispiel:
unalias wake_backup

chroot

Verschieben des Wurzelverzeichnisses = Root Verzeichnis

chroot /mnt /bin/bash
# ergänzend:
mount /proc
mount /sys

... wenn in /mnt ein Linux Rootsystem gemountet ist

date

Die Formatdefinition wird mit einem + eingeleitet.

  • Alter einer Datei in Stunden
 Stunden=`( ($(date +%s) - $(date +%s --reference $LOCKFILE)) / 3600 )`
  • Zeit und Datum extrahieren
zeit=`date +%T | cut -c1-5`
datum="`date +%A'  '%d.%m.%Y`"

dmesg

Zeigt Kernelmeldungen beim Booten an.

find

  • Suchen von Dateien in einem bestimmten Verzeichnis

Normalerweise beginnt die Suche im aktuellen Verzeichnis.

find /root -name "fileCopy.lock*"

In diesem Beispiel ist das Verzeichnis /root der Startpunkt für die Suche.

Ein Kommando auf das Suchergebnis anwenden

Mit der Option -exec kann man nur einen Befehl ausführen. Die Konstruktion {} wird durch den Pfadnamen der gefundenen Datei(en) ersetzt.

* Bestimmte Bilder rekursiv löschen
filename=DSC00079.jpg
find . -name "$filename" -exec rm {} \;
# Beispiel für das Verzeichnis der Komponente Phocagallery in Joomla

In diesem Beispiel sollen folgende Dateien gelöscht werden:

DSC00079.jpg 
phoca_thumb_l_DSC00079.jpg
phoca_thumb_m_DSC00079.jpg
phoca_thumb_s_DSC00079.jpg
filename=DSC00079.jpg
find . -name "*$filename" -exec rm {} \;
# Dateien löschen
find . -name '*.bak' -exec rm {} \;
# Verzeichnisse löschen
find  . -name "*Foto laden*" -type d -exec rm {} -R \;
# Broken Symlinks finden und speichern
find . -type l ! -execdir test -e '{}' \; -print > broken.links
# Broken Links löschen
while read Zeile ; do rm "$Zeile" ; done < broken.links
  • Schleife durch die Ausgabe des find Befehles
find . -name *.tif | \
while read file ; do 
  # Bilder konvertieren:
  convert "$file" "`dirname "$file"`/`basename "$file" .tif`.jpg"
  # Dateinamen in Großbuchstaben:
  cp $file `dirname $file`/`basename $file | tr a-z A-Z` 
done
  • Suchen und ersetzen von Text
find . -type f -name "*.php" | \
while read file ; do 
  cp "$file" Datei.tmp   
  sed -e s/'suchtext'/'ersatztext'/g Datei.tmp > "$file"                              
done
  • Suchtiefe einschränken
find . -type d -maxtepth 1 -name "joomla_*"

grep

  • Text rekursiv in allen Dateien suchen
grep -r Suchtext /www/HS_Server/
  • Nur in bestimmten Dateien suchen
grep -r --include "*.php" Suchtext /www/HS_Server/
  • Suchbegriff enthält Sonderzeichen

Suchbegriff in singleQuotes setzen und vor jedes Sonderrzeichen einen Backslash

# Beispiel
grep '\-!\-' *.php

hwinfo

Hardwareinfo ausgeben, Beispiele:

hwinfo --sound
hwinfo --scanner

iconv

Textdateien konvertieren in andere Kodierung

# Beispiel
cat Datei.html | iconv -f ISO_8859-15 > Datei.html
# oder iconv -f ISO_8859-15 Quelldatei.html -o Zieldatei.html

Folgendes Script konvertiert alle html-Dateien und php-Dateien im aktuellen Verzeichnis:

/usr/local/bin/iconv.sh

lpr

Drucken von der Kommandozeile

  • Datei im Querformat drucken und Ränder setzen
lpr -o page-left=30 -o page-top=40 -o landscape /etc/fstab
  • Ausgabe eines Kommandos drucken
fdisk -l | lpr
  • Standard Options

http://www.cups.org/documentation.php/options.html#OPTIONS

  • Howto

http://www.cups.org/documentation.php/options.html

read

Variable einlesen mit editierbarem Vorgabewert

name="Ferdinand Anton"
read -e -i "$name" -p "Please enter your name: " input
echo $input

rpm

RPM Paket downloaden und gleich installieren, Beispiel:

rpm -vU http://download.insecure.org/nmap/dist/nmap-4.20-1.i386.rpm

# -v (verbose)
# -U (Update)

Infos über Pakete abrufen: -qa = Abfrage, query über alle Pakete.

# Anzahl der Pakete
rpm -qa | wc -l

# Info über bestimmtes Paket, in diesem Fall quenview
rpm -qa | grep quenview

Info über rpm: http://www.tu-chemnitz.de/docs/lindocs/RPM/node4.html

screen

Mit screen kann man innerhalb einer Konsole mehrere Konsolensitzungen erzeugen.

Info: Artikel aus LinuxUser

  • Screen Session starten
screen
  • Screen Session abtrennen
screen -d [-S Name]

Die Sitzung läuft dann im Hintergrund eigenständig weiter.

  • Screen Sitzung wiederaufnehmen
screen -R [-S Name]
  • Tastenbefehle für den interaktiven Modus:

Die Tastenbefehle werden eingeleitet mit Strg a. Eine Liste der Tastenkombinationen erhält man mit der Tastenkombination Strg a ?. Einige Beispiele:

Neues Fenster: Strg a c
Nächstes Fenster: Strg a Leertaste
Sitzung abtrennen: Strg a d
  • Screen Befehle

Diese Befehle ersetzen die im interaktiven Modus verwendbaren Tastenkombinationen und können somit in Scripten verwendet werden. Die Befehle werden mit der Option -X eingeleitet.

  • Nächstes Fenster
screen -X next 
  • Neues Fenster
screen -X screen
  • Befehl in neuem Fenster
screen -X screen yast

seq

seq -w 10

Gibt die Zahlen von 1 bis 10 mit führenden Nullen aus.

su

Dauerhafter Wechsel der Identität

# Login als Root mit entsprechenden Umgebungseinstellungen 
su -

# Wechsel zu Root ohne Umgebungseinstellungen, man bleibt im selben Verzeichnis
su

Damit man von der Textkonsole aus auch grafische Programme verwenden kann, gibt es den Befehl kdesu.

Beispiel:
kdesu konqueror

sudo

Mit sudo kann ein Befehl unter einem anderen Benutzer ausgeführt werden, typischerweise als root.

sudo befehl
# oder
sudo -u username befehl

Mit dem Kommando

visudo 

kann man die Datei /etc/sudoers bearbeiten

Einen anderen Editor für visudo verwenden

Einen Alias anlegen und diesen in /root/.bashrc eintragen.

# tilde als Editor für visudo verwenden
alias visudo='export VISUAL=tilde; visudo'

Beispiele

Shutdown für die Gruppe users erlauben

%users  localhost=/sbin/shutdown -h now
# ... für alle:
ALL  localhost=/sbin/shutdown -h now 

Script für chown

Das Kommando chown kann normalerweise nur der Benutzer root ausführen.

# chown.sh
user=$1
group=$2
filePattern=$3
chown $user.$group $filePattern

Das Script speichern als /usr/local/bin/chown.sh. Man kann es als normaler User aufrufen bzw. in einem Script verwenden, wenn man folgende Zeile zu /etc/sudowers hinzufügt:

myusername  ALL = (root) NOPASSWD:/usr/local/bin/chown.sh 

Aufruf des Scripts vor dem Upload von Dateien zum Webhost.

# Beispiel
sudo chown.sh wwwrun www *.php

Es erfolgt keine Passwortabfrage. Es kann also der Eigentümer der Dateien ohne root-Rechte geändert werden.

Info

Hier findet man eine gute Anleitung: http://www.gentoo.org/doc/de/sudo-guide.xml#doc_chap3

uname

Systeminformationen ausgeben

uname -a

liefert alle Infos

xdg-open

Öffnet eine Datei oder URL mit dem dafür vorgesehenen Standardprogramm.

xdg-open PIC12345.jpg