長年にわたって複数のSQLおよびNoSQLデータベースで遊んだ後、データ中心の個人用アプリで移植性を確保する最善の方法は、すべての真正なデータベースを完全に避けることだと感じています。私は、ファイルシステムを、ポータブルで人間が読み取れる美しいデータベースパラダイムと見なしているため、私が書いている種類の個人アプリケーションに十分な寿命を持っています。これは、多対1の関係を表すシンボリックリンクを使用して、ツリー構造(パーティション分割に適しています)を実行するグラフデータベースのようなものです。
ファイルシステムトポロジ全体を単一のファイルとしてエクスポートする方法はありますか?find
コマンドの出力は有望ですが、シンボリックリンクが指すものを示すデータをエクスポートする標準化された方法はありません。次のfind
ような出力形式の個人的な選択を思いつきません。
/home/me/photos/beach/me_and_my_dog.jpg -> /home/me/photos/beach/1.jpg
誰かが以前にファイルシステムトポロジのエクスポート形式を確立する作業をしたことがある場合。
別の候補はJSONファイルです。
home : [{
me : [{
photos : [{
beach : [{
1.jpg,
{ me_and_my_dog.jpg : ./1.jpg }
}]
}]
}
}]
ただし、ファイルの種類を表す方法は複数あり、誰かが既に標準を確立する作業を行っているのではないかと思います。
ファイルのコンテンツをエクスポートしたくないことに注意してください。エクスポートすると、必要以上に大きくなります。
tree
コマンドを知っていました(これは素晴らしいです)が、コマンドが解析可能な形式をサポートするようになったことに気付きませんでした。