Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


lpi1:shell_configdateien

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
lpi1:shell_configdateien [2016/04/19 14:59] – [Häufige Kommandofolgen abkürzen] ingo_wichmannlpi1:shell_configdateien [2023/10/25 07:53] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
-===== Bash Konfigurationsdateien ===== +===== .bashrc ====== 
-Testen, welche Konfigurationsdateien wann benutzt werden: +==== Aufgabe 1: History ==== 
-  for file in /etc/profile /etc/bash.bashrc ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc ~/.bash_logout; + 
-  do +Erweitere die history list so, dass sie Platz für 2000 Befehle hat und 200000 Befehle in einer Datei bewahrt. 
-    echo "echo Hello $file" >> $file + 
-  done+Was ändert sich mit der Variable\\ 
 +''HISTTIMEFORMAT='[%F_%T] ''' 
 + 
 + 
 +==== Aufgabe 2: Prompt ==== 
 + 
 +Lies das Kapitel "Prompting" in der "man"-Page für "bash". Erstelle einen Prompt-String welcher die folgenden Daten beinhaltet: 
 + 
 +  * Loginname 
 +  * Hostname des Rechners 
 +  * die History-Nummer des aktuellen Kommandos, in Klammern "z. B. (10)" 
 +  * das aktuelle Verzeichnis 
 +  * Prompt-Zeichen für normalen Benutzer oder "root" 
 + 
 +Baue das neue Prompt in das Profile-Startscript für die Bash für deinen aktuellen Benutzer ein. 
  
 ==== profile oder bashrc? ==== ==== profile oder bashrc? ====
-''umask'' und ''export''ierte Variablen gehören besser in die ''.profile'', weil Beides an die Kindprozesse vererbt wird.+''umask'' und ''export''ierte Variablen gehören besser in die ''.profile'', weil beides an die Kindprozesse vererbt wird. 
 + 
 +Eine Ersetzung in der Form ''%%PATH="$PATH:$HOME/bin"%%'' würde z. B. mit jeder weiteren Subshell ausgeführt und jedes Mal neu evaluiert werden, so dass dieselbe Ergänzung jedes Mal wieder stattfindet. 
 + 
 +=== Beispiel Umgebungsvariable setzen === 
 + 
 +<file bash ~/.profile> 
 + 
 +… 
 + 
 +VAR=wert 
 +export VAR 
 +</file>
  
-Eine Ersetzung in der Form ''$PATH="$PATH:$HOME/bin"'' würde z.B. mit jeder weiteren Subshell ausgeführt und jedes Mal neu evaluiert werden.+Abmelden: Grafisch oder 
 +  loginctl list-sessions 
 +  loginctl terminate-session 5 
 +Wieder anmelden. 
 +  echo $VAR 
 +   
 +(Neustart ''gnome-terminal'' reicht nicht)
 ===== Häufige Kommandofolgen abkürzen ===== ===== Häufige Kommandofolgen abkürzen =====
  
Zeile 19: Zeile 52:
  
 Dateiinhalt ohne Kommentare ausgeben: Dateiinhalt ohne Kommentare ausgeben:
-  alias ccat='egrep -v "^\s*(#|$)"'+  alias ccat='grep -Ev "^\s*(#|$)"'
 oder oder
 <code bash> <code bash>
 function ccat {  function ccat { 
-  egrep -v '^\s*(#|$)' "$1" +  grep -Ev '^\s*(#|$)' "$1" 
 } }
 </code> </code>
Zeile 30: Zeile 63:
 <code bash> <code bash>
 function cgrep { function cgrep {
-  egrep -v '^\s*(#|$)' "$2" | grep --colour=auto "$1"+  grep -Ev '^\s*(#|$)' "$2" | grep --colour=auto "$1"
 } }
 </code> </code>
lpi1/shell_configdateien.1461077972.txt.gz · Zuletzt geändert: 2016/04/19 14:59 von ingo_wichmann