Ubuntu'da dosyaları etiketleme


11

Ubuntu'daki dosyalarda etiketleri nasıl ayarlayabilirsiniz?

Her türlü dosyayı etiketlemek istiyorum:

  • Görüntüler
  • Ses
  • Metin
  • Ofis
  • Dizinler

Bulduğum tek çözüm MetaTracker'dı .

Ancak bu projeler ölü gibi görünüyor.

Bu masaüstü sorununu nasıl çözebilirim?

Bu etiketleri nextcloud gibi bir sunucuyla senkronize edebiliyorsanız, süper harika bir üfleme olur.


1
izci denedi, ama çok kırık görünüyor
Anona112

1
Bu q + a ile ilgili sorun nedir: askubuntu.com/questions/827701/… ?
Rinzwind

1
@Rinzwind, 827701 numaralı soruya işaret ettiğiniz için teşekkür ederiz. Ama kendime bu komut dosyasının neden gerekli olduğunu soruyorum. Neden kullanıma hazır uygulama yok? Linux kütüphaneleri gerçekten harika. Çok fazla eksik değil, sadece bazı parlatma ve linux elma ürünleriyle rekabet edebilir. Ama linux düşkünleri aşk detayları dikiş, ayrıntılar için bakım, ancak ortalama geek olmayan kullanıcıların yüksek düzeyde kullanım durumu .... kimse bunu umursamıyor. Bu üzücü.
guettli

2
Benim düşünceme göre, Linux zaten Apple ürünleriyle rekabet ediyor (ve her seferinde kazanıyor). Etiketlemenin bu kadar büyük bir şey olduğunu düşünmüyorum çünkü kimse gerçekten bunu ciddiye istemiyor.
Kaz Wolfe

2
@KazWolfe evet, haklısın kimse bunu istemiyor. Bu alıntıyı beğendim: “İnsanlara ne istediklerini sorsaydım, daha hızlı atlar söylerlerdi.” - Henry Ford. Ne demek istiyorum: Tüm dağıtımlarda kullanılabilir güvenilir bir etiketleme API olurdu kod çoğaltma çok kaldırılabilir. Aynı sorun tekrar tekrar çözüldü. Fotoğraf yönetimi uygulamaları, müzik çalarlar, ubuntu arama (çizgi) yapar ...
guettli

Yanıtlar:


5

En iyi yol etiketleme dosya sistemi tagsistant gibi görünüyor .

Ana sayfadan:

Tagsistant, dizinleri etiketlere dönüştüren ve dosyalarınızı sizin için araştıran Linux için etiket tabanlı bir dosya sistemidir.

Etiket Bağlayıcı

Tagsistant'a kullanmak istediğiniz dizinin adını söyleyin, örneğin evinizdeki dosyalarım /. Bu dizin artık dosyalarınızı yönetmenize yardımcı olan özel kurallara sahip özel bir yerdir.

$ tagsistant ~/myfiles
$

Etiketlerinizi oluşturun

Etiketler altındaki dizinleri düşünün / üstüne bir şeyler yazdığınız beyaz çıkartmalar olarak düşünün. Dosyalarınızı işaretlemeye hazır, istediğiniz kadar etiket oluşturun.

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

Dosyalarınızı etiketleyin

/ Etiketlerinde bir etiket oluşturduktan sonra, bu etiket / deposunda kullanılabilir. Dosyalarınızı içine kopyalayın: dosyaları bu şekilde etiketlersiniz. @, Etiket listesinin sonunu işaretler ve zorunludur.

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

Dosyalarınızı etiketlere göre bulma

İstediğiniz kadar etiket seçerek arama sorgunuzu oluşturun. Hatta startrek / + / starwars / gibi startrek etiketli dosyaları starwars etiketli dosyalarla birleştiren + / arasına yerleştirerek birden fazla sorgunun sonuçlarını birleştirebilirsiniz.

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

Etiketler arasındaki ilişkileri etkinleştirme

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

Tagsistant çeşitli ilişkileri anlar:

  • şunları içerir: A B içeriyorsa, B olarak etiketlenen herhangi bir dosya otomatik olarak A içinde bulunabilir.
  • Hariç tutulur: A, B'yi hariç tutarsa, B olarak etiketlenen herhangi bir dosya, A olarak etiketlenmiş olsa bile A içinde bulunamaz.
  • is_equivalent: A, B'ye eşdeğerse, A'daki tüm dosyalar B'de kullanılabilir ve tersi de geçerlidir.

Ve daha fazlası var!

Tüm dizinleri etiketle

$ 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 ile tüm dizinleri etiketleyebilirsiniz. Dizinin kendisi etiketlenir, içindeki dosyalar değil, db etiketinde yer tasarrufu sağlar.

Üçlü etiket kullan

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

Üçlü etiketler, etiketin ilgi alanını, etiketi niteleyen bir anahtarı, bir operatörü (eşitlik için eq, gt'den büyük, lt'den küçüktür ve inc için içerir) ve son olarak etiketi nicelleştiren bir değer.

Bana öyle geliyor ki Linux'ta dosya etiketleme için en tutarlı ve zarif yaklaşım. 10 yıldan fazla süredir var, bu yüzden yakında kaybolma riski olmadan olgun bir çözüm.


4

Daha önce benzer bir soru soruldu: Farklı klasörlerden dosya seçme

Nautilus'ta bir klasörden bir grup dosya seçmek, sonra farklı bir klasöre gitmek ve seçime biraz daha dosya eklemek mümkün mü?

6 oyla kabul edilen cevap "Hayır, ne yazık ki bu mümkün değil." .

Caydırılmayı reddederek sorunu çözmek için bir bash betiği yazdım.


Bafman Başlıyor

Bu soruya cevap olarak bafman(Born Again File Manager) geliştirdim .

Cevapta 13 ekran var, bu yüzden size fikir vermek için bunlardan biri:

Bafman 12

Bafman Geri Dönüyor

Bash kodu birincinin altında ayrı bir cevapta yayınlandı, ancak revizyonlar 30K sınırına sığmayacak kadar büyük oldu, böylece cevap silindi. Birisi bash senaryosuyla ilgileniyorsa, projeyi diriltip github'da yayınlamaktan mutluluk duyarım.


Bu soru dosyaları etiketlemekle ilgilidir. Bu, etiketlerin yeniden başlatıldığında hayatta kalması gerektiği anlamına gelir. Bence cevabınızdaki çözüm soruya uymuyor.
guettli

@guettli etiketleri yeniden başlatma hayatta kalmak ve saklanır .bafmanDirsve .bafmanFiles.
WinEunuuchs2Unix

Üzgünüm, çok hızlı okudum. Bafman adlı bir araç geliştirdiniz. Burada kodlamanın doğru olup olmadığından emin değilim. Belki bir anlaşma ve basit bir spesifikasyon gerekli olabilir. Ama kim kabul etmeli? GNOME geliştiricileri?
guettli

@guettli Kardeş saha Yazılım Mühendisliğimizde Gnome Nautilus'taki değişiklikleri tartışan insanlar var. Örneğin bu soru: softwareengineering.stackexchange.com/questions/149824/… Buradan kaydolarak kendi fikrinizi buradan yayınlamak isteyebilirsiniz? Dosya taşındığında etiketler hareket ederken, aklıma gelen tek yol "Doğum Tarihi" gibi boş bir dosya öznitelikleri alanı kullanmak ve bayraklarla maskelemek. Bu, listelendiğinde doğum tarihinin komik görünmesini sağlayacaktır. Etkin olmasa da doğum tarihi alanı yakında daha yeni uygulamalar tarafından kullanılacaktır.
WinEunuuchs2Unix

3

Etiketlemek istediğiniz dosyalar Nextcloud'da dosya paylaşımı için barındırılıyorsa, manuel etiketleme ile birlikte Nextcloud dosyaları otomatik etiketleme uygulamasını kullanabilirsiniz .

Otomatik etiketleme

Resmi açıklama şu şekildedir:

Nextcloud için, yeni yüklenen dosyalara bazı koşullara göre otomatik olarak etiket atayan bir uygulama.

Etiketler daha sonra saklama, dosya erişimi, otomatik komut dosyası yürütme ve daha fazlasını denetlemek için kullanılabilir.

resim açıklamasını buraya girin

Nextcloud 12 ve 13 için çalışır.

Etiketleri tanımlamak için yöneticiler bir grup kural grubu oluşturabilir ve yönetebilir. Her kural grubu, işleçlerle birleştirilen bir veya daha fazla kuraldan oluşur. Kurallar, dosya türü, boyutu, süresi ve daha fazlası gibi ölçütleri içerebilir. Tüm kurallar doğru olarak değerlendirilirse, istek bir grupla eşleşir. Bir dosyayı yüklerken, tanımlanan tüm gruplar değerlendirilir ve eşleştirilirken, verilen etiketler dosyaya atanır.

Manuel etiketleme

Burada , web görünümünde dosya yöneticisini kullanarak Owncloud / Nextcloud 9.x'ten beri dosyaların manuel etiketlemesinin nasıl yapıldığını görebilirsiniz.

ANLADIM

Etiketleri Ubuntu masaüstü dosya yöneticisi aracılığıyla aramak istiyorsanız, ağ paylaşımını bağlamak ve Nextcloud WebDAV API ile bir şeyler yapmak için WebDAV kullanmadığınız sürece bu çalışmayabilir .


Garip ama gerçek, nextcloud.com'da yalnızca otomatik etiketleme hakkında resmi dokümanlar buldum, ancak manuel etiketleme hakkında değil. Kör müyüm?
guettli

0

Dosyaları da etiketlemem gerekiyordu ve bunu yapmanın yerleşik bir yolunun yokluğunda, etiketlerimi dosyaların dosya adlarına uygulayacağımıza karar verdim. Bu şekilde, belirli etiketlere sahip dosyaları aramak için bash ifadelerinin tam gücüne sahip olursunuz, etiketleri kaybetme cp ve mv vb. Sorunları yoktur ve etiketler bir gui dosya yöneticisinde görünür.

Örneğin, dosya adlarının her birinin sonuna (tag1, tag2 ...) "eklemeye karar verebilirsiniz.

Düzenleme: bu benim etiketlerim üç gruptan biri veya daha fazlasının dosya üyeliğini göstermek için daha uygun olduğu yerde bana çok uygun. Daha genel bir etiket uygulaması için, dosya adlarının sonunda (bash vb.) Kullanılacak daha kolay bir sözdizimi "dosyaadı! Tag1! Tag2" gibi bir şey olacaktır.


Evet, bu geçici bir çözümdür. Ama bu bir çözümdür. Çözüm değil, plan değil, hedef değil.
guettli

Gerçekten öyle. Bununla ilgili bir sorun, bir dosyanın etiketlerini değiştirirseniz, dosya adı değişir, bu nedenle bir komut dosyası dosyaya başvurursa, dosyaya sonradan herhangi bir sayıda etikete izin verecek şekilde öngörüde bulunmadığınız sürece kırılır. temel dosya adı.
B.Tanner

@ B.Tanner Etiketsiz dosya adları kullanarak ve sabit bağlantılı etiketli dosya adları oluşturarak etiketleri ekleyerek yeniden adlandırma sorununu önleyebilirsiniz. Komut dosyaları, etiketlemeden bağımsız olmak için etiketlenmemiş dosya adlarını kullanmalıdır.
muclux

@muclux teşekkür ederim, evet harika bir fikir. Şahsen benim için sadece teorik bir sorun ("etiketli" dosyalar üzerinde çalışan herhangi bir komut dosyası yok) ama her zaman dosyanın adını değiştirme konusunda biraz huzursuz bir his vardı. Bu, etiketleri gerçek dosyalardan ayrı tutmanın iyi bir yolu olabilir. Yedek etkileri hakkında düşünmek
zorunda kalacak
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.