UnixTools01: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
No edit summary |
No edit summary |
||
| (48 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
= Unix-Tools |
= Unix-Tools - Teil 1 (für Anfänger) = |
||
Grundlagen im Umgang mit bash. Für Anfänger. |
|||
= login, logout = |
|||
* Login screen |
|||
* Bash-Kommandos |
|||
* Logout |
|||
| ⚫ | |||
* Wer bin ich, und wo? |
|||
** id |
|||
** who |
|||
** hostname |
|||
** history |
|||
| ⚫ | |||
= ssh - login on a different computer = |
|||
* ssh redlich@gruenau.informatik.hu-berlin.de |
|||
* hostname -f |
|||
* uname -a |
|||
| ⚫ | |||
= Files, Directories, Working Directory = |
= Files, Directories, Working Directory = |
||
| Line 40: | Line 19: | ||
* /usr/bin/././.. |
* /usr/bin/././.. |
||
[[UnixTools01_04|genauer]] |
[[UnixTools01_04|genauer]] |
||
= Basic Shell Commands = |
= Basic Shell Commands = |
||
| Line 49: | Line 29: | ||
* mv |
* mv |
||
[[UnixTools01_05|genauer]] |
[[UnixTools01_05|genauer]] |
||
= Using Wildcards to identify files = |
= Using Wildcards to identify files = |
||
| Line 65: | Line 46: | ||
[[UnixTools01_06|genauer]] |
[[UnixTools01_06|genauer]] |
||
= Editor= |
|||
= Editor - Erstellen und Bearbeiten von Text-Dateie n= |
|||
* nano |
* nano |
||
* alternatives: vi, vim, nedit, emacs |
* alternatives: vi, vim, nedit, emacs |
||
[[UnixTools01_07|genauer]] |
[[UnixTools01_07|genauer]] |
||
= more basic tools = |
= more basic tools = |
||
| Line 87: | Line 70: | ||
= Redirection - part 1 = |
= Redirection - part 1 = |
||
redirecting output of a programm to another file |
redirecting output of a programm to another file |
||
* ls /bin/a* > file.txt |
* ls /bin/a* > file.txt |
||
| Line 99: | Line 81: | ||
* wc < file.txt |
* wc < file.txt |
||
let the output of programm be used as input of another |
let the output of programm be used as input of another program |
||
* ls -lisa /bin | more |
* ls -lisa /bin | more |
||
* ls -lisa /bin | wc |
* ls -lisa /bin | wc |
||
[[UnixTools01_10|genauer]] |
[[UnixTools01_10|genauer]] |
||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
* ~/file.txt |
|||
* ~redlich/file2.txt |
|||
[[UnixTools01_11|genauer]] |
|||
| ⚫ | |||
* touch "Good Morning" |
* touch "Good Morning" |
||
* touch '$*()#!' |
* touch '$*()#!' |
||
[[UnixTools01_12|genauer]] |
[[UnixTools01_12|genauer]] |
||
Q&E: |
|||
# Legen Sie eine Datei an, die 'Hello World!" heisst (mit Leerzeichen), und löschen Sie diese Datei anschliessend wieder. |
|||
# Löschen Sie im aktuellen Verzeichnis eine Datei, die '--help' heisst |
|||
# Legen Sie eine Datei an, die '2*3' heisst |
|||
# Versuchen Sie eine Datei anzulegen, die "///A///' heist. |
|||
| ⚫ | |||
Q&E: |
|||
| ⚫ | |||
# Normalerweise gibt grep alle diejenigen Zeilen der Eingabe aus, die ein angegebenes Muster enthalten. Lesen Sie die Hilfe-Seite des Befehls grep, und finden Sie heraus, wie Sie grep aufrufen müsen, damit alle Zeilen ausgegeben werden, die ein bestimmtes Mustzer NICHT enthalten. |
|||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
= Alias = |
= Alias = |
||
| ⚫ | |||
* .bashrc (erstes Kennenlernen) |
|||
| ⚫ | |||
Einige Kommandos werden Sie bei ihrer Arbeit so oft eingeben, dass es sinnvoll ist, dafür Kurzformen zu einzuführen. |
|||
Bash selbst legt keine Kurzformen für Kommandos fest, da vermutlich jeder Nutzer, abhängig von dem, was er/sie so tut, sich etwas anderes wünschen würde. |
|||
Stattdessen gibt es die Möglicvhkeit, mit dem Shell-Kommando '''alias''' selbst eigene Kurzformen zu definieren. |
|||
$ alias h='echo Hello World' |
|||
$ h |
|||
Hello World |
|||
| ⚫ | |||
$ ll /tmp |
|||
12 4 drwxrwxrwt 2 root root 4096 18. Dez 2023 .XIM-unix |
|||
21 4 drwxrwxrwt 2 root root 4096 29. Nov 00:20 .xrdp |
|||
37 4 drwx------ 2 friedosi mi15 4096 11. Nov 11:35 ZhzXXA2WgS |
|||
Ein Alias ist also eine Zeichenkette, die die Stell, wenn sie diese Zeichenkette in einem von ihnen eingegebenen Kommando entdeckt, durch den TExt hinter dem Gleichheitszeichen '=' ersetzt (Hinweis: enthält dieser Text Leerzeichen oder Sonderzeichen, so müssen sie ihn in Anführungszeichen setzen - diese sind später nicht bestandteil des ersetzten Textes, sie dienen nur dazu, dass die Shell ihre '''alias'''-Definition richtig versteht. |
|||
= Spraxche ändern = |
|||
export LANG=en_US |
|||
export LANGUAGE=en_US |
|||
export LANG=ru-RU |
|||
'''alias'''-Definitionen gelten dann ab dem Zeitpunkt ihrer Definition (am dem Zeitpunkt, wenn Sie '''alias''' ausführen) bis die Shell beendet wird. Das bedeutet, wenn Sie sich wieder neu einloggen, dann müssen Sie das '''alias'''-Kommando neu eingeben. Aber keine Sorge, auch für dieses Problem gibt es eine Lösung - Sie können Kommandos, die eine neu gestartete Shell ganz am Anfang (also zum Beispiel nach dem Login) ausführen soll, in eine Datei namens '''.bashrc''' schreiben. Also auch Ihre '''alias'''-Kommandos. Wenn sie dies tun, wird ihre Shell kü+nftig, wenn sie startet, zuerst die Kommandos in der Datei '''.bashrc''' abarbeiten, wo sie neben anderen Dingen, mit Hilfe des Kommandos '''alias''' ihre eigenen Kurzformen definieren können. |
|||
export LANGUAGE=ru-RU |
|||
| ⚫ | |||
Latest revision as of 10:43, 13 December 2024
Unix-Tools - Teil 1 (für Anfänger)
Files, Directories, Working Directory
- ls
- pwd
- cd
- ls -l
- Die Verzeichnisse . und ..
Path Names
- a/b/c relativer Path
- /a/b/c absoluter Path
- usage of <TAB> when entering file names in bash
- ~/..
- /tmp/../etc/../../bin/../usr
- /usr/bin/././..
Basic Shell Commands
- cat
- touch
- rm
- mkdir
- rmdir
- mv
Using Wildcards to identify files
- echo Hello World
- echo *
- ls *
- ls *.*
- ls a*
- ls *a
- ls *a*
- rm /tmp/a*
- ls /tmp/[a-c]*
- ls /*/bin/a*
Editor - Erstellen und Bearbeiten von Text-Dateie n
- nano
- alternatives: vi, vim, nedit, emacs
more basic tools
- more
- wc
- grep
- tail
- head
- find
- Expert Tipp: grep muster $(find / -name patern -print)
Getting help
- grep --help
Redirection - part 1
redirecting output of a programm to another file
- ls /bin/a* > file.txt
- ls > /dev/null
append output to a file
- ls /bin/b* >> file.txt
let a programm take its input from a file (redirecting input)
- more < file.txt
- wc < file.txt
let the output of programm be used as input of another program
- ls -lisa /bin | more
- ls -lisa /bin | wc
Argumente mit Sonderzeichen
- touch "Good Morning"
- touch '$*()#!'
Redirection - part 2
- ls * 2> /dev/null
- ls 2>&1 | more
- << END
Alias
- alias ll='ls -lisa'
- .bashrc (erstes Kennenlernen)
Spraxche ändern
export LANG=en_US export LANGUAGE=en_US
export LANG=ru-RU export LANGUAGE=ru-RU