Linuxファイルシステムに保存されているすべての項目にタグを付ける方法は?

Linuxファイルシステムに保存されているすべての項目にタグを付ける方法は?

BTRFSファイルシステムを使用してLinuxで次のタスクを実行するには?

Mac OS X El Capitanでは、タグを使用してファイルをクリーンアップできます。ファイルやフォルダにタグを付けると簡単に見つけることができます。タグはすべてのファイルとフォルダに適用されます。すべてのファイル(またはフォルダ?)に複数のタグを追加できます。

https://support.apple.com/kb/PH22180?locale=en_US

もちろん、これらのタグの目的は、タグごとに検索/検索を行うことです。 Mac OS X Finderにはタグサポートが含まれています。

Linuxでは、タグ付けとタグによる検索(および関連機能)を実行するためにコマンドラインツールを使用する必要がある場合でも問題ありません。

答え1

1つの可能性は、拡張属性を使用することです。物件(7)紹介してみてください。

(しかし、まだ広く使用されていないと思います。Debianおよび関連ディストリビューションではパッケージをインストールしてからコマンドを使用する必要がxattrありxattrます。)

答え2

単純なファイルタグ付けの場合、基本的な質問はタグがどこに/どのように保存されるかです。ファイルシステムが異種のファイル形式タグをデフォルトでサポートしていない場合、2つの一般的な(理想的ではありませんが)アプローチは次のとおりです。ファイル名の挿入そしてサイドカー。前者は、タグが実際にファイル名に挿入されることを意味します。foo.txt~になるfoo-[タグ1、タグ2].txt。後者のサイドカーは、ラベルがラベル付けされるファイルと同じディレクトリまたは共通サブディレクトリのファイルに保存されることを意味します。例えばfoo.txt伴うことができる.foo.txt.タグ

これらのどれもあまり魅力的に聞こえません。そうですか?挿入が面倒だと思いますが、少なくともサイドカーのようにタグを移動または削除する場合は、ファイルにタグが保持されていることを心配する必要はありません。

しかし、明らかに、これらのトレードオフは、一部の人には許可される可能性があります。

私はオープンソースのクロスプラットフォームソリューションについて肯定的なニュースを聞きました。ラベルスペース。デフォルトでは、組み込み方式を使用しますが、サイドカーをサポートするEnterpriseバージョンもあります。機能セットは魅力的で、ユーザーインターフェースは見やすく使いやすいです。まだあるようです。他のクライアントと統合したり、独自のクライアントを作成したい場合(CLIなど)、複数のプラットフォームにファイルを保存したい場合は、クロスプラットフォームの側面に言及する価値があります。

この解決策や他の同様の解決策と同様に、最終的に問題はあなたがそれを余裕があるかどうかによって異なります。現実を直視しましょう...少しハッキータグ持続性の詳細! :)

編集する:Embed タグを使用しているユーザーが提供する情報は次のとおりです。ファイル(PDF)にタグを追加し、コマンドラインまたはスクリプトで処理します。スレッドの残りの部分も興味深いかもしれません。

答え3

最も簡単な方法は、タグ/ディレクトリを作成し、その中に各タグのディレクトリを作成することです。次に、ファイル(ハードリンクが最高)をタグディレクトリにリンクして、そのタグを割り当てます。ただし、処理する必要のあるものは同じ名前のファイルなので、ファイル名にダイジェスト番号を追加することをお勧めします。このアプローチの唯一の欠点(使いやすいツールがないことに加えて)は、ディレクトリあたり約10,000個のファイルの後にパフォーマンスが問題になることです。

関連情報