Taggare i file su Ubuntu


11

Come puoi impostare tag su file su Ubuntu?

Voglio taggare tutti i tipi di file:

  • immagini
  • Audio
  • Testo
  • Ufficio
  • Elenchi

L'unica soluzione che ho trovato era MetaTracker .

Ma questo progetto sembra essere morto.

Come posso risolvere questo problema sul desktop?

Sarebbe strabiliante se potessi sincronizzare questi tag con un server come nextcloud.


1
provato tracker, ma sembra molto rotto
Anona112

1
Cosa c'è di sbagliato in questo q + a: askubuntu.com/questions/827701/… ?
Rinzwind,

1
@Rinzwind ti ringrazio per aver indicato la domanda 827701. La soluzione più in alto dovrebbe funzionare. Ma mi chiedo perché questo scripting sia necessario. Perché non esiste un'applicazione pronta per l'uso? Le librerie di Linux sono davvero fantastiche. Non manca molto, solo un po 'di lucidatura e Linux potrebbero competere con i prodotti Apple. Ma sembra che i fanatici di Linux adorino i dettagli, si preoccupano dei dettagli, ma il caso d'uso di alto livello degli utenti medi non geek .... nessuno se ne preoccupa. È triste.
Guettli,

2
Secondo me, Linux fa già concorrenza ai prodotti Apple (e vince sempre). Semplicemente non penso che il tagging sia così grande perché nessuno lo chiede davvero sul serio.
Kaz Wolfe,

2
@KazWolfe sì, hai ragione, nessuno lo chiede. Mi piace questa frase: "Se avessi chiesto alla gente cosa volevano, avrebbero detto cavalli più veloci". - Henry Ford. Cosa voglio dire: se ci fosse un'API di tagging affidabile disponibile su tutte le distribuzioni, molte duplicazioni di codice potrebbero essere rimosse. Lo stesso problema viene risolto più volte. Le applicazioni di gestione delle foto lo fanno, i lettori di musica lo fanno, la ricerca di Ubuntu (trattino) lo fa ...
Guettli,

Risposte:


5

Il modo migliore sembra essere il tagistant del file system di tagging .

Dalla homepage:

Tagistant è un filesystem basato su tag per Linux che trasforma le directory in tag e cerca i tuoi file.

Mount Tagistant

Basta dire a Tagistant il nome della directory che si desidera utilizzare, ad esempio myfiles / nella propria casa. Questa directory è ora un posto speciale con regole personalizzate che ti aiutano a gestire i tuoi file.

$ tagsistant ~/myfiles
$

Crea i tuoi tag

Pensa alle directory sotto i tag / come adesivi bianchi su cui scrivi qualcosa. Crea tutti i tag di cui hai bisogno, pronti a contrassegnare i tuoi file.

$ mkdir ~/myfiles/tags/startrek
$ mkdir ~/myfiles/tags/starwars
$ mkdir ~/myfiles/tags/scifi

Tagga i tuoi file

Dopo aver creato un tag nei tag /, sarà disponibile nello store /. Copia i tuoi file al suo interno: è così che tagghi i file. La @ indica la fine dell'elenco dei tag ed è obbligatoria.

$ cp first_contact.avi ~/myfiles/store/startrek/@
$ cp the_return_of_the_jedi.avi ~/myfiles/store/starwars/@

Trova i tuoi file per tag

Componi la tua query di ricerca scegliendo tutti i tag che desideri. Puoi anche combinare i risultati di più di una query posizionando un + / in mezzo, come in startrek / + / starwars / che unisce i file taggati startrek con i file con tag starwars.

$ ls ~/myfiles/store/startrek/@
first_contact.avi
$ ls ~/myfiles/store/startrek/+/starwars/@
first_contact.avi
the_return_of_the_jedi.avi

Attiva le relazioni tra i tag

$ 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!

Tagistant comprende diverse relazioni:

  • include: Se A include B, tutti i file contrassegnati come B possono essere trovati automaticamente all'interno di A.
  • esclude: Se A esclude B, qualsiasi file contrassegnato come B non può essere trovato all'interno di A anche se è contrassegnato come A.
  • is_equivalent: se A è equivalente a B, tutti i file in A sono disponibili in B e viceversa.

E c'è ancora di più!

Tagga intere directory

$ 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 ... ]

Con Tagistant puoi taggare intere directory. La directory stessa verrà taggata, non i file all'interno, risparmiando spazio nel tag db.

Usa tag tripli

$ 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/@

I tag tripli sono tag avanzati formati da uno spazio dei nomi (terminato da due punti) che identifica il dominio di interesse del tag, una chiave che qualifica il tag, un operatore (eq per l'uguaglianza, gt per maggiore di, lt per minore di e inc per include) e infine un valore che quantifica il tag.

Questo mi sembra l'approccio più coerente ed elegante per la codifica dei file su Linux. È in circolazione da più di 10 anni, quindi è anche una soluzione matura, senza il rischio di scomparire presto.


4

In precedenza era stata posta una domanda simile: selezione di file da cartelle diverse

In nautilus è possibile selezionare un gruppo di file da una cartella, quindi passare a una cartella diversa e aggiungere altri file alla selezione?

La risposta accettata con 6 voti positivi è stata "No, purtroppo non è possibile". .

Rifiutando di essere dissuaso, ho scritto una sceneggiatura per affrontare il problema.


Inizia Bafman

In risposta alla domanda che ho sviluppato bafman(Born Again File Manager), che ha avuto solo un certo successo perché c'era poco interesse per la risposta.

Ci sono 13 schermate nella risposta, quindi eccone una per darti l'idea:

bafman 12

Bafman Returns

Il codice bash è stato pubblicato in una risposta separata sotto la prima, ma le revisioni lo hanno reso troppo grande per rientrare nel limite di 30 KB, quindi la risposta è stata eliminata. Se qualcuno è interessato allo script bash, sarei felice di resuscitare il progetto e pubblicarlo su github.


Questa domanda riguarda il tagging dei file. Ciò significa che i tag dovrebbero sopravvivere al riavvio. Penso che la soluzione nella tua risposta non si adatti alla domanda.
Guettli,

@guettli I tag sopravvivono al riavvio e sono memorizzati in .bafmanDirse .bafmanFiles.
WinEunuuchs2Unix il

Mi dispiace, ho letto troppo in fretta. Hai sviluppato uno strumento chiamato bafman. Non sono sicuro che la codifica sia la cosa giusta qui. Forse sarebbero necessari un accordo e una semplice specifica. Ma chi dovrebbe essere d'accordo? Gli sviluppatori di gnome?
Guettli,

@guettli L' ingegneria del software del nostro sito affiliato ha persone che discutono delle modifiche a Gnome Nautilus. Ad esempio questa domanda: softwareengineering.stackexchange.com/questions/149824/… Potresti voler iscriverti lì e pubblicare la tua idea da qui? Per quanto riguarda i tag che si spostano quando il file viene spostato, l'unico modo a cui riesco a pensare è usare un campo di attributi di file vuoto come "Data di nascita" e mascherarlo con le bandiere. Ciò renderà la data di nascita divertente quando elencata però. Sebbene inattivo il campo della data di nascita verrà presto utilizzato dalle app più recenti.
WinEunuuchs2Unix

2

Se i file che desideri taggare sono ospitati in Nextcloud per la condivisione dei file, puoi utilizzare l'app di codifica automatica dei file Nextcloud insieme alla codifica manuale.

Tagging automatico

La descrizione ufficiale recita:

Un'app per Nextcloud che assegna automaticamente i tag ai file appena caricati in base ad alcune condizioni.

I tag possono essere successivamente utilizzati per controllare la conservazione, l'accesso ai file, l'esecuzione automatica degli script e altro.

inserisci qui la descrizione dell'immagine

Funziona con Nextcloud 12 e 13.

Per definire i tag, gli amministratori possono creare e gestire un set di gruppi di regole. Ogni gruppo di regole è costituito da una o più regole combinate tramite operatori. Le regole possono includere criteri come tipo di file, dimensioni, tempo e altro. Una richiesta corrisponde a un gruppo se tutte le regole vengono valutate come vere. Al caricamento di un file vengono valutati tutti i gruppi definiti e, quando corrispondenti, i tag indicati vengono assegnati al file.

Etichettatura manuale

E qui puoi vedere come è disponibile la codifica manuale dei file da Owncloud / Nextcloud 9.x usando il file manager nella vista web.

GOTCHA

Se si desidera cercare i tag tramite il file manager desktop di Ubuntu, questo potrebbe non funzionare a meno che non si usi WebDAV per montare la condivisione di rete e fare qualcosa con l' API WebDAV Nextcloud .


Strano ma vero, ho trovato solo documenti ufficiali su nextcloud.com sulla codifica automatica, ma non sulla codifica manuale. Sono cieco?
Guettli,

0

Avevo anche bisogno di taggare i file e ho deciso che in assenza di un modo integrato per farlo, avrei implementato i miei tag nei nomi dei file. In questo modo hai la piena potenza delle espressioni bash per cercare file con tag particolari, non c'è problema di cp, mv ecc. Che perdono i tag e i tag sono visibili in un file manager gui.

Ad esempio, potresti decidere di aggiungere (tag1, tag2 ...) "alla fine di ciascuno dei nomi dei file.

Modifica: mi andava bene dove i miei tag erano più per indicare l'appartenenza al file di uno o più di tre gruppi. Per un'applicazione di tag più generale una sintassi più semplice da usare (con bash ecc.) Alla fine dei nomi dei file sarebbe qualcosa come "nomefile! Tag1! Tag2".


Sì, questa è una soluzione alternativa. Ma è una soluzione. Non una soluzione, non un piano e non un obiettivo.
Guettli,

Certo che lo è. Un problema è che se si cambiano i tag di un file, il nome del file cambia, quindi se si dice che uno script fa riferimento al file, questo si interrompe a meno che non si abbia la previsione di fare riferimento al file in un modo che consenta un numero qualsiasi di tag dopo il nome file di base.
B.Tanner il

@ B.Tanner È possibile evitare il problema di ridenominazione utilizzando nomi di file senza tag e aggiungendo i tag creando nomi di file con tag hardlink. Gli script devono utilizzare i nomi di file senza tag per essere indipendenti dal tag.
muclux,

@muclux grazie, sì ottima idea. Personalmente per me è solo un problema teorico (non ho script che funzionano sui file "taggati") ma ho sempre avuto una sensazione leggermente inquieta di cambiare il nome del file. Questo potrebbe essere un buon modo per mantenere i tag separati dai file effettivi. Dovrà pensare alle implicazioni del backup ...
B.Tanner
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.