Ubuntuでファイルにタグを設定するにはどうすればよいですか?
あらゆる種類のファイルにタグを付けたい:
- 画像
- オーディオ
- テキスト
- オフィス
- ディレクトリ
私が見つけた唯一の解決策はMetaTrackerでした。
しかし、このプロジェクトは死んでいるようです。
このデスクトップの問題を解決するにはどうすればよいですか?
これらのタグをnextcloudのようなサーバーと同期できれば、すごいことになるでしょう。
Ubuntuでファイルにタグを設定するにはどうすればよいですか?
あらゆる種類のファイルにタグを付けたい:
私が見つけた唯一の解決策はMetaTrackerでした。
しかし、このプロジェクトは死んでいるようです。
このデスクトップの問題を解決するにはどうすればよいですか?
これらのタグをnextcloudのようなサーバーと同期できれば、すごいことになるでしょう。
回答:
最善の方法は、タグ付けファイルシステムのtagistantのようです。
ホームページから:
Tagsistantは、ディレクトリをタグに変換してファイルを検索するLinux用のタグベースのファイルシステムです。
タギスタント山
使用したいディレクトリの名前をTagistantに伝えます。たとえば、自宅のmyfiles /です。このディレクトリは、ファイルの管理に役立つカスタムルールを備えた特別な場所になりました。
$ tagsistant ~/myfiles
$
タグを作成する
tags /の下のディレクトリを、あなたが上に何かを書く白いステッカーとして考えてください。必要なだけタグを作成し、ファイルにマークを付ける準備をします。
$ mkdir ~/myfiles/tags/startrek
$ mkdir ~/myfiles/tags/starwars
$ mkdir ~/myfiles/tags/scifi
ファイルにタグを付ける
tags /でタグを作成すると、store /で使用できるようになります。その中にファイルをコピーします。これがファイルにタグを付ける方法です。@はタグリストの終わりを示し、必須です。
$ cp first_contact.avi ~/myfiles/store/startrek/@
$ cp the_return_of_the_jedi.avi ~/myfiles/store/starwars/@
タグでファイルを見つける
必要な数のタグを選択して、検索クエリを作成します。startrek / + / starwars /のように間にstart / kとタグ付けされたファイルとstarwarsとタグ付けされたファイルをマージするように、間に+ /を置くことで、複数のクエリの結果を結合することもできます。
$ ls ~/myfiles/store/startrek/@
first_contact.avi
$ ls ~/myfiles/store/startrek/+/starwars/@
first_contact.avi
the_return_of_the_jedi.avi
タグ間の関係をアクティブ化
$ mkdir ~/myfiles/relations/scifi/includes/startrek
$ ls ~/myfiles/store/scifi/@
first_contact.avi # 1 file...
$ mkdir ~/myfiles/relations/scifi/includes/starwars
$ ls ~/myfiles/store/scifi/@
first_contact.avi
the_return_of_the_jedi.avi # 2 files!
タギスタントはいくつかの関係を理解しています:
さらにもっとあります!
ディレクトリ全体にタグを付ける
$ cp -R ~/Photos/London ~/myfiles/store/photos/@
$ ls -l ~/myfiles/store/photos/@/
London
$ ls -l ~/myfiles/store/photos/@/London/
-rw------- 1 tx0 tx0 2.3M Sep 28 2009 bridge.jpg
-rw------- 1 tx0 tx0 3.0M Aug 30 2011 trafalgar_square.jpg
[ ... more files here ... ]
Tagsistantを使用すると、ディレクトリ全体にタグを付けることができます。内部のファイルではなく、ディレクトリ自体にタグが付けられ、タグdbのスペースが節約されます。
トリプルタグを使用する
$ ls ~/myfiles/store/document:/author/eq/Tx0/@
$ ls ~/myfiles/store/document:/title/inc/Strategic/@
$ ls ~/myfiles/store/pictures:/aperture/gt/5.6/@
$ ls ~/myfiles/store/time:/hour/lt/3/@
トリプルタグは、タグの対象ドメインを識別する名前空間(コロンで終了)、タグを修飾するキー、演算子(等しい場合はeq、より大きい場合はlt、より小さい場合はlt、およびinc)によって形成される高度なタグです。を含む)、最後にタグを数量化する値。
これは、Linuxでファイルのタグ付けを行うための最も一貫したエレガントなアプローチのようです。10年以上使用されているため、すぐに消えるリスクのない成熟したソリューションでもあります。
同様の質問が以前に尋ねられました:異なるフォルダーからのファイルの選択
nautilusでフォルダーからファイルの束を選択し、別のフォルダーに移動して、選択にさらにファイルを追加することはできますか?
6つの賛成票で認められた回答は「いいえ、残念ながらそれは不可能です」でした。。
思いとどまることを拒否して、問題に取り組むためにbashスクリプトを書きました。
私が開発した質問bafman
(Born Again File Manager)に応えて、答えにほとんど興味がなかったため、ある程度成功しただけでした。
答えには13の画面があるので、ここにその1つを示します。
bashコードは最初の回答の下に別の回答で投稿されましたが、改訂により30Kの制限内に収まらないため、回答が削除されました。誰かがbashスクリプトに興味があれば、プロジェクトを復活させてgithubに投稿したいと思います。
.bafmanDirs
と.bafmanFiles
。
タグ付けするファイルがファイル共有のためにNextcloudでホストされている場合は、Nextcloudファイルの自動タグ付けアプリと手動タグ付けを使用できます。
公式の説明は次のとおりです。
いくつかの条件に基づいて、新しくアップロードされたファイルにタグを自動的に割り当てるNextcloudのアプリ。
後でタグを使用して、保持、ファイルアクセス、自動スクリプト実行などを制御できます。
Nextcloud 12および13で動作します。
タグを定義するために、管理者は一連のルールグループを作成および管理できます。各ルールグループは、演算子で結合された1つ以上のルールで構成されます。ルールには、ファイルタイプ、サイズ、時間などの基準を含めることができます。すべてのルールがtrueと評価された場合、リクエストはグループと一致します。ファイルをアップロードすると、定義されたすべてのグループが評価され、一致すると、指定されたタグがファイルに割り当てられます。
また、Owncloud / Nextcloud 9.x以降、Webビューでファイルマネージャーを使用して、ファイルに手動でタグ付けする方法を確認できます。
Ubuntuデスクトップファイルマネージャーを介してタグを検索する場合、WebDAVを使用してネットワーク共有をマウントし、Nextcloud WebDAV APIで何かを実行しない限り、これは機能しない可能性があります。
私もファイルにタグを付ける必要があり、それを行う組み込みの方法がない場合は、ファイルのファイル名にタグを実装することにしました。そうすることで、特定のタグが付いたファイルを検索するbash式の全機能を利用でき、cpやmvなどがタグを失っても問題はなく、タグはguiファイルマネージャーに表示されます。
たとえば、各ファイル名の末尾に(tag1、tag2 ...) "を追加することができます。
編集:これは、3つのグループの1つ以上のファイルメンバーシップを示すためにタグが多かった場合に適しています。より一般的なタグアプリケーションの場合、ファイル名の最後に(bashなどを使用して)より簡単に使用できる構文は、「filename!tag1!tag2」のようになります。