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
Nächste Überarbeitung
Vorherige Überarbeitung
lpi1:shell_configdateien [2011/07/19 08:55] – [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 +
-    echo "echo Hello $file" >> $file +
-  done+
  
 +Erweitere die history list so, dass sie Platz für 2000 Befehle hat und 200000 Befehle in einer Datei bewahrt.
  
 +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? ====
 +''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>
 +
 +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 15: Zeile 51:
   alias   alias
  
-Dabeiinhalt ohne Kommentare ausgeben:+Dateiinhalt ohne Kommentare ausgeben: 
 +  alias ccat='grep -Ev "^\s*(#|$)"' 
 +oder
 <code bash> <code bash>
 function ccat {  function ccat { 
-  egrep -v '^\s*(#|$)' $1 +  grep -Ev '^\s*(#|$)' "$1" 
 } }
 </code> </code>
Zeile 25: 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.1311065752.txt.gz · Zuletzt geändert: 2011/07/19 08:55 von ingo_wichmann