Allgemeine Befehle - alphabetisch: Unterschied zwischen den Versionen
K (→at) |
|||
(7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
== at == | == at == | ||
− | + | Einen Befehl zu einer bestimmten Zeit ausführen | |
− | + | * <tt>atd</tt> starten | |
+ | service atd start | ||
+ | * Anwendungsbeispiele | ||
at 23:00 | 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 | 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 | /var/spool/atjobs | ||
Zeile 33: | Zeile 36: | ||
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 106: | ||
* 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 124: | ||
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 | ||
− | |||
− | |||
− | |||
− | |||
== lpr == | == lpr == | ||
Zeile 205: | Zeile 208: | ||
visudo | visudo | ||
kann man die Datei <code>/etc/sudoers</code> bearbeiten | kann man die Datei <code>/etc/sudoers</code> bearbeiten | ||
+ | |||
+ | === Einen anderen Editor für visudo verwenden === | ||
+ | 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 === | === Beispiele === | ||
Zeile 224: | Zeile 232: | ||
# Beispiel | # Beispiel | ||
sudo chown.sh wwwrun www *.php | sudo chown.sh wwwrun www *.php | ||
− | Es erfolgt keine Passwortabfrage. | + | Es erfolgt keine Passwortabfrage. Es kann also der Eigentümer der Dateien ohne root-Rechte geändert werden. |
=== Info === | === Info === |
Aktuelle Version vom 9. August 2023, 07:31 Uhr
at
Einen Befehl zu einer bestimmten Zeit ausführen
- atd starten
service atd start
- Anwendungsbeispiele
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
Beispiel: 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