Linuxプログラミング
Linuxプログラミングについて解説していこうと思う。 開発言語は今のところC言語のみを想定しているが、 C言語解説のカテゴリで扱うには少し不適切な、 Linuxのシステムに大きく依存した内容をここで説明したいと思う。 基本的にはPOSIX準拠としたいが、 おそらくはGNU拡張や、Linuxでのみ通用する内容を含むことになるだろう。
車輪の再発明
既存のコマンドなどで実現されていることについて、 どうやって作るかを実際に作りながら説明していこうと思う。 通常はこのような行為は「車輪の再発明」とよばれる無駄の象徴のような行為なのだが、 学習という意味では、そこで使われる技術に手軽に、かつ深く理解できる良い方法だと思う。
lsっぽいコマンドを作る
- ディレクトリエントリの取得2015/12/12作成
- 隠しファイルのフィルタリング2015/12/13作成
- タイプ識別子の表示2015/12/27作成
- モード文字列の表示2016/1/9作成
- ハードリンク数、uid/gid、サイズ、タイムスタンプの表示2016/3/6作成
- ユーザ名、グループ名の表示と日時のフォーマット2016/3/11作成
- シンボリックリンクのリンク先表示2016/3/12作成
- ファイル種別に基づく色付き表示2016/3/13作成
- サブディレクトリの再帰的表示2016/5/8作成
- サブディレクトリの再帰的表示の改善2017/1/3作成
- ソート機能の追加2017/1/4作成
- ファイル指定できるようにする2018/7/13作成
- 複数のパスを指定できるようにする2018/7/29作成