UnixTools01: Difference between revisions
No edit summary |
|||
(36 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
= Unix-Tools |
= Unix-Tools - Teil 1 (für Anfänger) = |
||
Das Betriebssystem ist Ihr Freund. |
|||
Es tut alles, was sie von ihm wollen, aber sie müssen ihm klar und unmissverständlich sagen können, *was* sie wollen. |
|||
Das Instrument dafür ist die '''Shell'''. |
|||
Die Shell ist selbst ein Programm, das automatisch gestartet wird, sobald sie sich am Computer angemeldet haben. |
|||
Es wartet auf Eingaben von Ihnen und wird dann, entsprechend Ihren Anweisungen, Programme starten und dadurch das Betriebssystem dazu bringen, das zu tun, was Sie möchten. |
|||
Vorausgesetzt natürlich, die beherrschen die Kunst, der Shell zu sagen, *was* Sie wollen. |
|||
Es lohnt sich, dies gleich von Anfang an gründlich zu erlernen, denn Sie werden viel Zeit damit verbringen; oder anders gesagt: Sie können viel Zeit und Nerven sparen, wenn Sie es gleich richtig lernen. |
|||
Diese Seite soll Ihnen die Grundlagen beibringen. Sie ist also '''für Anfänger''' gedacht. |
|||
= login, logout = |
= login, logout = |
||
* Login screen |
* Login screen |
||
* Bash-Kommandos |
* Aufbau eines Bash-Kommandos |
||
* Logout |
* exit (Logout) |
||
[[UnixTools01_01|genauer]] |
[[UnixTools01_01|genauer]] |
||
= Wo und Wer bin ich hier? = |
|||
** id |
|||
* hostname - Wo bin ich? Auf welchem Rechner? |
|||
** who |
|||
* id - Wer bin ich hier? Welcher Nutzer? |
|||
** hostname |
|||
* who - Wer ist gerade noch hier, auf diesem Rechner? |
|||
** history |
|||
* history - Was habe ich als letztes hier getan (welche Kommandos habe ich hier zuletzt ausgeführt)? |
|||
[[UnixTools01_01a|genauer]] |
[[UnixTools01_01a|genauer]] |
||
= ssh - login on a different computer = |
|||
* ssh redlich@gruenau.informatik.hu-berlin.de |
* ssh redlich@gruenau.informatik.hu-berlin.de |
||
* hostname -f |
* hostname -f |
||
* uname -a |
* uname -a |
||
* exit (Logout) |
|||
[[UnixTools01_02|genauer]] |
[[UnixTools01_02|genauer]] |
||
= Files, Directories, Working Directory = |
|||
* ls |
* ls |
||
* pwd |
* pwd |
||
Line 29: | Line 44: | ||
= Path Names = |
|||
* a/b/c relativer Path |
* a/b/c relativer Path |
||
* /a/b/c absoluter Path |
* /a/b/c absoluter Path |
||
Line 39: | Line 54: | ||
[[UnixTools01_04|genauer]] |
[[UnixTools01_04|genauer]] |
||
== basic shell commands == |
|||
= Basic Shell Commands = |
|||
* cat |
* cat |
||
* touch |
* touch |
||
Line 48: | Line 64: | ||
[[UnixTools01_05|genauer]] |
[[UnixTools01_05|genauer]] |
||
= Using Wildcards to identify files = |
|||
* echo Hello World |
* echo Hello World |
||
* echo * |
* echo * |
||
Line 63: | Line 80: | ||
[[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 |
* more |
||
* wc |
* wc |
||
Line 78: | Line 97: | ||
[[UnixTools01_08|genauer]] |
[[UnixTools01_08|genauer]] |
||
⚫ | |||
= Getting help = |
|||
⚫ | |||
[[UnixTools01_09|genauer]] |
|||
⚫ | |||
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 91: | Line 115: | ||
* 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]] |
|||
== Redirection, Wildcards - part 2 == |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
* ~/file.txt |
|||
* ~redlich/file2.txt |
|||
⚫ | |||
* touch "Good Morning" |
* touch "Good Morning" |
||
* touch '$*()#!' |
* touch '$*()#!' |
||
[[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. |
|||
= Redirection - part 2 = |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
[[UnixTools01_11|genauer]] |
|||
= Alias = |
|||
* alias ll='ls -lisa' |
|||
* .bashrc (erstes Kennenlernen) |
|||
[[UnixTools01_13|genauer]] |
|||
= Spraxche ändern = |
|||
export LANG=en_US |
|||
export LANGUAGE=en_US |
|||
export LANG=ru-RU |
|||
Q&E: |
|||
export LANGUAGE=ru-RU |
|||
# 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. |
|||
[[UnixTools01_14|genauer]] |
Latest revision as of 18:11, 29 November 2024
Unix-Tools - Teil 1 (für Anfänger)
Das Betriebssystem ist Ihr Freund. Es tut alles, was sie von ihm wollen, aber sie müssen ihm klar und unmissverständlich sagen können, *was* sie wollen. Das Instrument dafür ist die Shell. Die Shell ist selbst ein Programm, das automatisch gestartet wird, sobald sie sich am Computer angemeldet haben. Es wartet auf Eingaben von Ihnen und wird dann, entsprechend Ihren Anweisungen, Programme starten und dadurch das Betriebssystem dazu bringen, das zu tun, was Sie möchten. Vorausgesetzt natürlich, die beherrschen die Kunst, der Shell zu sagen, *was* Sie wollen. Es lohnt sich, dies gleich von Anfang an gründlich zu erlernen, denn Sie werden viel Zeit damit verbringen; oder anders gesagt: Sie können viel Zeit und Nerven sparen, wenn Sie es gleich richtig lernen.
Diese Seite soll Ihnen die Grundlagen beibringen. Sie ist also für Anfänger gedacht.
login, logout
- Login screen
- Aufbau eines Bash-Kommandos
- exit (Logout)
Wo und Wer bin ich hier?
- hostname - Wo bin ich? Auf welchem Rechner?
- id - Wer bin ich hier? Welcher Nutzer?
- who - Wer ist gerade noch hier, auf diesem Rechner?
- history - Was habe ich als letztes hier getan (welche Kommandos habe ich hier zuletzt ausgeführt)?
ssh - login on a different computer
- ssh redlich@gruenau.informatik.hu-berlin.de
- hostname -f
- uname -a
- exit (Logout)
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