Under Construction

Anzeigen der History mit "fc -l"

Um zurückliegende Kommandos aufzulisten, besitzt fc die Option „-l“ (list). Dabei werden ohne weitere Argumente nur die letzten 16 Kommandos aufgelistet:

[user01@aixe01 ~]$ fc -l
5        ls -l
6        cat passwd
7        cd
8        pwd
9        ls -l log*
10       tail log
11       tail -30 log
12       pwd
13       cd /usr/bin
14       find . -name "ta*"
15       which tail
16       id
17       cd
18       ls -l *.old
19       rm file.old
20       pwd
[user01@aixe01 ~]$

Möchte man mehr (oder weniger) Kommandos sehen, gibt man als Argument einfach die Nummer an, ab der man die Kommandos sehen möchte, z.B. ab Kommando 15:

[user01@aixe01 ~]$ fc -l 15
15       which tail
16       id
17       cd
18       ls -l *.old
19       rm file.old
20       pwd
21       fc -l
[user01@aixe01 ~]$

Da man typischerweise die Kommandonummern nicht im Kopf hat, aber trotzdem beispielsweise die letzten 5 Kommandos sehen möchte, kann man dies über die Angabe einer negativen Zahl realisieren. Um die letzten 5 Kommandos anzeigen zu lassen, wird als Argument „-5“ angegeben:

[user01@aixe01 ~]$ fc -l -5
18       ls -l *.old
19       rm file.old
20       pwd
21       fc -l
22       fc -l 15
[user01@aixe01 ~]$

Hinweis: Das funktioniert beim history Kommando durch Angabe einer positiven Zahl, „history 5“ listet die letzten 5 Kommandos auf.

Beim Kommando „fc –l“ kann eine zweite Zahl als Argument angegeben werden. Die beiden angegebenen Zahlen bilden dann einen Bereich „von“ – „bis“. Z.B. die Kommandos von Nummer 9 bis Nummer 14:

[user01@aixe01 ~]$ fc -l 9 14
9        ls -l log*
10       tail log
11       tail -30 log
12       pwd
13       cd /usr/bin
14       find . -name "ta*"
[user01@aixe01 ~]$

Oder von Kommando 9 bis zum drittletzten (-3) Kommando:

[user01@aixe01 ~]$ fc -l 9 -3
9        ls -l log*
10       tail log
11       tail -30 log
12       pwd
13       cd /usr/bin
14       find . -name "ta*"
15       which tail
16       id
17       cd
18       ls -l *.old
19       rm file.old
20       pwd
21       fc -l
[user01@aixe01 ~]$

Eine solche Bereichsangabe hat das history Kommando nicht zu bieten.

Anstelle von Nummern und negativen Zahlen kann man auch Zeichenketten als Argumente angeben, z.B. der Bereich der Kommandos ab dem letzten cat Kommando, bis zum Kommando mit der Nummer 16:

[user01@aixe01 ~]$ fc -l cat 16
6        cat passwd
7        cd
8        pwd
9        ls -l log*
10       tail log
11       tail -30 log
12       pwd
13       cd /usr/bin
14       find . -name "ta*"
15       which tail
16       id
[user01@aixe01 ~]$

Gesucht wird dann nach dem letzten Kommando das mit der angegebenen Zeichenkette (hier „cat“) beginnt.

Möchte man auf die Ausgabe der Nummerierung verzichten, kann man die Option „-n“ verwenden:

[user01@aixe01 ~]$ fc -ln cat find
         cat passwd
         cd
         pwd
         ls -l log*
         tail log
         tail -30 log
         pwd
         cd /usr/bin
         find . -name "ta*"
[user01@aixe01 ~]$

Oder die History lässt sich durch Verwenden der Option „-r“ (reverse) auch in umgekehrter Reihenfolge ausgeben:

[user01@aixe01 ~]$ fc -lr cat find
14       find . -name "ta*"
13       cd /usr/bin
12       pwd
11       tail -30 log
10       tail log
9        ls -l log*
8        pwd
7        cd
6        cat passwd
[user01@aixe01 ~]$