This is some output from a run of my shell program. Anything after a # is a comment that I've added to explain what's going on.
cs31shell> history
1 history
cs31shell> ls
Makefile cs31shell parsecmd.c parsecmd.o sleeper tester
README.md cs31shell.c parsecmd.h sample_inputs sleeper.c tester.c
cs31shell> cd
cs31shell> pwd
/home/kwebb
cs31shell> history
1 history
2 ls
3 cd
4 pwd
5 history
cs31shell> history
1 history
2 ls
3 cd
4 pwd
5 history
6 history
cs31shell> history
1 history
2 ls
3 cd
4 pwd
5 history
6 history
7 history
cs31shell> history
1 history
2 ls
3 cd
4 pwd
5 history
6 history
7 history
8 history
cs31shell> history
1 history
2 ls
3 cd
4 pwd
5 history
6 history
7 history
8 history
9 history
cs31shell> history
1 history
2 ls
3 cd
4 pwd
5 history
6 history
7 history
8 history
9 history
10 history
# Note: It's at this point that we've filled the history queue (assuming
# MAXHIST is set to 10), so it should start overwriting old values in the
# circular queue.
cs31shell> history
2 ls
3 cd
4 pwd
5 history
6 history
7 history
8 history
9 history
10 history
11 history
cs31shell> history
3 cd
4 pwd
5 history
6 history
7 history
8 history
9 history
10 history
11 history
12 history
cs31shell> ps
PID TTY TIME CMD
2368939 pts/15 00:00:00 bash
2372082 pts/15 00:00:00 cs31shell
2372290 pts/15 00:00:00 ps
cs31shell> pwd
/home/kwebb
cs31shell> history
6 history
7 history
8 history
9 history
10 history
11 history
12 history
13 ps
14 pwd
15 history
cs31shell> exit
Bye!