Skip to content

basic commands

Basic Commands

HISTORY

Die History Datei liegt unter

echo $HISTFILE

angucken mit

cat $HISTFILE

oder

history

ECHO

Mit echo kann man Variablen ausgeben

ochse=1
echo $x
echo "alles ausgeben \n bricht nicht um"
echo -e "test \n test mit -e wird Zeilenumbruch ausgeführt"
man echo

Umgebugnsvariablen

Alle Umgebungsvariablen anzeigen

env

die Path-Varialbe anziegen:

echo $PATH

CAT

Datei(en) öffnen

  cat datei
  cat datei1 datei2 > datei3

LESS

seitenweise große Dateien anzeigen

  less datei1

mit q verlassen

ersten 10 zeilen anzeigen

head /etc/passwd
head /etc/passwd -n 10

TAIL

wie head, nur von hinten

Live überwachen

tail -f /var/log/dpkg.log

NL

gibt die Anzahl aller Zeilen aus

nl /etc/passwd

Leerzeilen haben keine Zeilennummer!

WC

Wordcount

wc /etc/passwd

die erte Zahl Zeilenanzhl die zweite zahl: anzal wrörter die dirtte zhtl: bytes

OD

od - dump files in octal and other formats

od -c /etc/passwd
od /etc/passwd

SORT

table.csv 1,Hans 23,Axenmensch 24,peter 2,kanter

sort -n table.csv

Sort sagen, dass wir komma als seperator haben und das wir nach der spalte 2 sortiern wollen (name)

sort -t "," -k2 table.csv

-t Trenner -k Key numerisch Dateiname

UNIQ

uniq löscht untereinanderstehende gleiche Zeilen. mit -c kann man sich anzeigen lassen, wie oft die Zeile vor kam.

uniq uniq.txt
uniq -c uniq.txt
uniq --group uniq.txt

TR

translate: ersetzt zeichen durch anderes zeichen ersetze komma durch semikolon:

echo "one,two" | tr ',' ';'
one;two

cat table.csv | tr ',' ';' > table2.csv

echo "one,two" | tr 'a-z' 'A-Z'
ONE,TWO


echo "one,two" | tr 'a-z' 'A-Z' | tr ',' ';'
ONE;TWO

Große Json-Datei in Zeilen splitten und nach Vorkommen suchen:

tr "," "\n" < staticfiles.json | grep "filetosearchfor"

CUT

wie cat, nur mit ausschneiden. -d Delimiter -f Field

cut -d ',' -f 2 table2.csv

Hans
peter
kanter
Axenmensch

❯ cat table2.csv 1,Hans,34 24,peter,22 2,kanter,11 23,Axenmensch,21

man kann auch zwei Fields rausschneiden

cut -d ',' -f 2,3 table2.csv

Hans,34
peter,22
kanter,11
Axenmensch,21

PASTE

Dateien zusammenführen cat a.txt 1,alfa 2,beute

cat b.txt apple bea

paste -d ',' a.txt b.txt 1,alfa,apple 2,beute,bea

SED

Inhalte erstezen s = substitute finden ersetzen g global (alles ersetzten)

ändere alle vorkommen von er durch ra in table2.csv

sed 's/er/ra/g' table2.csv

wenn man die Datei verändern will, muss man kleines i nutzen

sed 's/er/ra/g' -i table2.csv

Alle Vorkommen in Dateien ersetzen mit ag (Silver Search)

ag SearchString -l0 | xargs -0 sed -i 's/SearchString/Replacement/g'

Alle Vorkommen in Dateien ersetzen mit grep

grep -rl SearchString . | xargs sed -i 's/SearchString/Replacement/g'

SPLIT

eine DAtei in kleinere Dateien zerlegen (20 bytes große dateien)

split -b 20 table2.csv

SCP

Auf entfernten Server kopieren (mit ssh-key)

scp -i ~/.ssh/id_rsa.pub FILENAME USER@SERVER:/home/USER/FILENAME

DD

Bootloader sichern (die ersten 512 Bytes der HD)

dd if=/dev/sda of=backup_bootloader bs=512 count=1

XARGS