C言語でhistoryコマンドを書きたい

■要求定義
– コマンドの履歴を表示する

■検討
– historyの使われ方
$ history | head // 過去のコマンド一覧
$ history 10 // 最近実行したコマンド

このコマンドの履歴は、.bash_historyに格納されている。catでも見ることができる。
$ cat .bash_history

#include <stdio.h>

int main(){

	FILE *fp;
	char str[1024];

	fp = fopen("./../.bash_history","r");

	if(fp == NULL){
		printf("failed.\n");
		return -1;
	}

	while((fgets(str,256,fp)) !=NULL){
		printf("%s", str);
	}
	fclose(fp);

	return 0;
}

historyはコマンドプロンプトの履歴だが、原理は.bash_historyを見ているだけなので、catコマンドと一緒
隠しファイルの理由の一つは、ユーザが誤って変更や削除しないようにする為とのこと

チーム開発で何かあった時に、.bash_historyを確認する、って工程は使えそうだな。