Κατηγορίες αντί για καταλόγους ή το Semantic File System για Linux

Η ίδια η ταξινόμηση δεδομένων είναι ένα ενδιαφέρον ερευνητικό θέμα. Μου αρέσει να συλλέγω πληροφορίες που φαίνονται απαραίτητες και πάντα προσπαθούσα να δημιουργήσω λογικές ιεραρχίες καταλόγου για τα αρχεία μου και μια μέρα σε ένα όνειρο είδα ένα όμορφο και βολικό πρόγραμμα για την αντιστοίχιση ετικετών σε αρχεία και αποφάσισα ότι δεν μπορούσα να ζήσω έτσι πια.

Το πρόβλημα των ιεραρχικών συστημάτων αρχείων

Οι χρήστες αντιμετωπίζουν συχνά το πρόβλημα της επιλογής του σημείου αποθήκευσης του επόμενου νέου αρχείου και το πρόβλημα της εύρεσης των δικών τους αρχείων (μερικές φορές τα ονόματα αρχείων δεν προορίζονται καθόλου να τα θυμάται ένα άτομο).

Μια διέξοδος από την κατάσταση μπορεί να είναι τα σημασιολογικά συστήματα αρχείων, τα οποία είναι συνήθως ένα πρόσθετο στο παραδοσιακό σύστημα αρχείων. Οι κατάλογοι σε αυτούς αντικαθίστανται από σημασιολογικά χαρακτηριστικά, που ονομάζονται επίσης ετικέτες, κατηγορίες και μεταδεδομένα. Θα χρησιμοποιώ πιο συχνά τον όρο «κατηγορία», γιατί... Στο πλαίσιο των συστημάτων αρχείων, η λέξη "tag" είναι μερικές φορές λίγο περίεργη, ειδικά όταν εμφανίζονται "subtags" και "tag ψευδώνυμα".

Η αντιστοίχιση κατηγοριών σε αρχεία εξαλείφει σε μεγάλο βαθμό το πρόβλημα της αποθήκευσης και αναζήτησης ενός αρχείου: εάν θυμάστε (ή μαντέψετε) τουλάχιστον μία από τις κατηγορίες που έχουν εκχωρηθεί σε ένα αρχείο, τότε το αρχείο δεν θα εξαφανιστεί ποτέ από την προβολή.

Προηγουμένως, αυτό το θέμα είχε τεθεί περισσότερες από μία φορές στο Habré (ώρα, два, τρία, τέσσερα κ.λπ.), εδώ περιγράφω τη λύση μου.

Πορεία προς την Πραγματοποίηση

Αμέσως μετά το αναφερόμενο όνειρο, περιέγραψα στο σημειωματάριό μου τη διεπαφή εντολών που παρέχει την απαραίτητη εργασία με κατηγορίες. Μετά αποφάσισα ότι σε μια ή δύο εβδομάδες θα μπορούσα να γράψω ένα πρωτότυπο χρησιμοποιώντας Python ή Bash και μετά θα έπρεπε να δουλέψω για τη δημιουργία ενός γραφικού κελύφους σε Qt ή GTK. Η πραγματικότητα, όπως πάντα, αποδείχθηκε πολύ πιο σκληρή και η ανάπτυξη καθυστέρησε.

Η αρχική ιδέα ήταν πρώτα απ' όλα να φτιάξουμε ένα πρόγραμμα με μια βολική και συνοπτική διεπαφή γραμμής εντολών που θα δημιουργούσε, θα διέγραφε κατηγορίες, θα εκχωρούσε κατηγορίες σε αρχεία και θα διέγραφε κατηγορίες από αρχεία. Κάλεσα το πρόγραμμα Ψίθυρος.

Πρώτη προσπάθεια δημιουργίας Ψίθυρος δεν κατέληγε σε τίποτα, αφού πολύς χρόνος άρχισε να ξοδεύεται στη δουλειά και στο κολέγιο. Η δεύτερη προσπάθεια ήταν ήδη κάτι: για τη μεταπτυχιακή εργασία, κατάφερα να ολοκληρώσω το προγραμματισμένο έργο και μάλιστα να φτιάξω ένα πρωτότυπο του κελύφους GTK. Αλλά αυτή η έκδοση αποδείχθηκε τόσο αναξιόπιστη και άβολη που έπρεπε να ξανασκεφτούν πολλά.

Στην πραγματικότητα χρησιμοποίησα την τρίτη έκδοση ο ίδιος για πολύ καιρό, έχοντας μεταφέρει αρκετές χιλιάδες από τα αρχεία μου σε κατηγορίες. Αυτό διευκολύνθηκε επίσης σε μεγάλο βαθμό από την ολοκλήρωση του bash που εφαρμόστηκε. Ωστόσο, ορισμένα προβλήματα, όπως η έλλειψη αυτόματων κατηγοριών και η δυνατότητα αποθήκευσης αρχείων με το ίδιο όνομα, παρέμειναν και το πρόγραμμα ήταν ήδη λυγισμένο υπό τη δική του πολυπλοκότητα. Έτσι κατέληξα στην ανάγκη να λύσω πολύπλοκα προβλήματα ανάπτυξης λογισμικού: να γράψω λεπτομερείς απαιτήσεις, να αναπτύξω ένα λειτουργικό σύστημα δοκιμών, να μελετήσω οδηγίες συσκευασίας και πολλά άλλα. Τώρα έφτασα στο σχέδιό μου, ώστε αυτή η ταπεινή δημιουργία να παρουσιαστεί στην ελεύθερη κοινότητα. Η συγκεκριμένη διαχείριση αρχείων, όπως η διαχείριση μέσω της έννοιας των κατηγοριών, εγείρει απροσδόκητα ζητήματα και προβλήματα και στην επίλυσή τους Ψίθυρος δημιούργησε άλλα πέντε έργα γύρω από τον εαυτό του, μερικά από τα οποία θα αναφερθούν στο άρθρο. Μέχρι τώρα Ψίθυρος Δεν έχω αγοράσει ένα κέλυφος γραφικών, αλλά η ευκολία χρήσης κατηγοριών αρχείων από τη γραμμή εντολών υπερτερεί ήδη για μένα των πλεονεκτημάτων ενός κανονικού διαχειριστή αρχείων γραφικών.

Παραδείγματα χρήσης

Ας ξεκινήσουμε απλά - δημιουργήστε μια κατηγορία:

vitis create Музыка

Ας προσθέσουμε κάποια σύνθεση σε αυτό ως παράδειγμα:

vitis assign Музыка -f "The Ink Spots - I Don't Want To Set The World On Fire.mp3"

Μπορείτε να δείτε τα περιεχόμενα της κατηγορίας «Μουσική» χρησιμοποιώντας την υποεντολή «εμφάνιση»:

vitis show Музыка

Μπορείτε να το παίξετε χρησιμοποιώντας την υποεντολή "open".

vitis open Музыка

Επειδή Εάν έχουμε μόνο ένα αρχείο στην κατηγορία "Μουσική", τότε μόνο αυτό θα ξεκινήσει. Για να ανοίξω αρχεία με τα προεπιλεγμένα τους προγράμματα, έφτιαξα ένα ξεχωριστό βοηθητικό πρόγραμμα vts-fs-open (Τα τυπικά εργαλεία όπως το xdg-open ή το mimeopen δεν με ταιριάζουν για διάφορους λόγους, αλλά, αν μη τι άλλο, στις ρυθμίσεις μπορείτε να καθορίσετε ένα άλλο βοηθητικό πρόγραμμα για το γενικό άνοιγμα αρχείων). Αυτό το βοηθητικό πρόγραμμα λειτουργεί καλά σε διαφορετικές διανομές με διαφορετικά περιβάλλοντα εργασίας, επομένως προτείνω να το εγκαταστήσετε μαζί με το vitis.

Μπορείτε επίσης να καθορίσετε απευθείας το πρόγραμμα για το άνοιγμα αρχείων:

vitis open Музыка --app qmmp

Κατηγορίες αντί για καταλόγους ή το Semantic File System για Linux

Ας δημιουργήσουμε περισσότερες κατηγορίες και ας προσθέσουμε αρχεία χρησιμοποιώντας την επιλογή "εκχώρηση". Εάν τα αρχεία έχουν εκχωρηθεί σε κατηγορίες που δεν υπάρχουν ακόμη, θα σας ζητηθεί να τα δημιουργήσετε. Ένα περιττό αίτημα μπορεί να αποφευχθεί χρησιμοποιώντας τη σημαία -ναι.

vitis assign Программирование R -f "Введение в R.pdf" "Статистический пакет R: теория вероятностей и матстатистика.pdf" --yes

Τώρα θέλουμε να προσθέσουμε την κατηγορία «Μαθηματικά» στο αρχείο «Στατιστικό πακέτο R: θεωρία πιθανοτήτων και μαθηματική στατιστική.pdf». Γνωρίζουμε ότι αυτό το αρχείο έχει ήδη κατηγοριοποιηθεί ως "R" και επομένως μπορούμε να χρησιμοποιήσουμε τη διαδρομή κατηγορίας από το σύστημα Vitis:

vitis assign Математика -v "R/Статистический пакет R: теория вероятностей и матстатистика.pdf"

Ευτυχώς, η ολοκλήρωση του bash το καθιστά εύκολο.

Ας δούμε τι συνέβη, χρησιμοποιώντας τη σημαία --categories για να δείτε μια λίστα κατηγοριών για κάθε αρχείο:

vitis show R --categories

Κατηγορίες αντί για καταλόγους ή το Semantic File System για Linux

Σημειώστε ότι τα αρχεία έχουν επίσης ταξινομηθεί αυτόματα ανά μορφή, τύπο (συνδυάζει μορφές) και επέκταση αρχείου. Αυτές οι κατηγορίες μπορούν να απενεργοποιηθούν εάν το επιθυμείτε. Αργότερα θα τοπικοποιήσω σίγουρα τα ονόματά τους.

Ας προσθέσουμε κάτι άλλο στα «Μαθηματικά» για ποικιλία:

vitis assign Математика -f "Математический анализ - 1984.pdf" Перельман_Занимательная_математика_1927.djvu 

Και τώρα τα πράγματα γίνονται ενδιαφέροντα. Αντί για κατηγορίες, μπορείτε να γράψετε εκφράσεις με τις πράξεις ένωσης, τομής και αφαίρεσης, δηλαδή να χρησιμοποιήσετε πράξεις σε σύνολα. Για παράδειγμα, η τομή του "Math" με το "R" θα έχει ως αποτέλεσμα ένα αρχείο.

vitis show R i: Математика

Ας αφαιρέσουμε τις αναφορές στη γλώσσα «R» από τα «Μαθηματικά»:

vitis show Математика  R  #или vitis show Математика c: R

Μπορούμε να συνδυάσουμε άσκοπα τη μουσική και τη γλώσσα R:

vitis show Музыка u: R

Η σημαία -n σάς επιτρέπει να "βγάλετε" τα απαιτούμενα αρχεία από το αποτέλεσμα του αιτήματος κατά αριθμούς ή/και εύρη, για παράδειγμα, -n 3-7, ή κάτι πιο περίπλοκο: -n 1,5,8-10,13. Είναι συχνά χρήσιμο με την ανοιχτή υποεντολή, η οποία σας επιτρέπει να ανοίξετε τα επιθυμητά αρχεία από μια λίστα.

Κατηγορίες αντί για καταλόγους ή το Semantic File System για Linux

Ενώ απομακρυνόμαστε από τη χρήση μιας συμβατικής ιεραρχίας καταλόγου, είναι συχνά χρήσιμο να έχουμε ένθετες κατηγορίες. Ας δημιουργήσουμε μια υποκατηγορία «Στατιστικά» στην κατηγορία «Μαθηματικά» και ας προσθέσουμε αυτήν την κατηγορία στο κατάλληλο αρχείο:

vitis create Математика/Статистика

vitis assign Математика/Статистика -v "R/Введение в R.pdf"

vitis show Математика --categories

Κατηγορίες αντί για καταλόγους ή το Semantic File System για Linux

Μπορούμε να δούμε ότι αυτό το αρχείο έχει πλέον την κατηγορία "Μαθηματικά/Στατιστικά" αντί για "Μαθηματικά" (παρακολουθούνται επιπλέον σύνδεσμοι).

Η διεύθυνση της πλήρους διαδρομής μπορεί να είναι άβολη, ας δημιουργήσουμε ένα «παγκόσμιο» ψευδώνυμο:

vitis assign Математика/Статистика -a Статистика

vitis show Статистика

Κατηγορίες αντί για καταλόγους ή το Semantic File System για Linux

Όχι μόνο κανονικά αρχεία

Σύνδεσμοι στο Διαδίκτυο

Για να ενοποιηθεί η αποθήκευση οποιασδήποτε πληροφορίας, θα ήταν χρήσιμο, τουλάχιστον, να κατηγοριοποιηθούν οι σύνδεσμοι προς πόρους του Διαδικτύου. Και αυτό είναι δυνατό:

vitis assign Хабр Цветоаномалия -i https://habr.com/ru/company/sfe_ru/blog/437304/ --yes

Ένα αρχείο με την κεφαλίδα σελίδας HTML και την επέκταση .desktop θα δημιουργηθεί σε ένα ειδικό μέρος. Αυτή είναι η παραδοσιακή μορφή συντόμευσης στο GNU/Linux. Τέτοιες συντομεύσεις κατηγοριοποιούνται αυτόματα ως Σελιδοδείκτες δικτύου.

Φυσικά, δημιουργούνται συντομεύσεις για χρήση:

vitis open Цветоаномалия

Η εκτέλεση της εντολής προκαλεί το άνοιγμα του πρόσφατα αποθηκευμένου συνδέσμου στο πρόγραμμα περιήγησης. Οι κατηγοριοποιημένες συντομεύσεις σε πηγές Διαδικτύου μπορούν να αντικαταστήσουν τους σελιδοδείκτες του προγράμματος περιήγησης.

Θραύσματα αρχείου

Είναι επίσης χρήσιμο να υπάρχουν κατηγορίες για μεμονωμένα κομμάτια αρχείων. Δεν είναι κακό αίτημα, ε; Αλλά η τρέχουσα εφαρμογή μέχρι στιγμής επηρεάζει μόνο αρχεία απλού κειμένου, αρχεία ήχου και βίντεο. Ας υποθέσουμε ότι πρέπει να επισημάνετε ένα συγκεκριμένο μέρος μιας συναυλίας ή μια αστεία στιγμή σε μια ταινία, και στη συνέχεια όταν χρησιμοποιείτε την ανάθεση μπορείτε να χρησιμοποιήσετε τις σημαίες -fragname, -start, -finish. Ας αποθηκεύσουμε την προφύλαξη οθόνης από το "DuckTales":

vitis assign vitis assign -c Заставки -f Duck_Tales/s01s01.avi --finish 00:00:59 --fragname "Duck Tales intro"

vitis open Заставки

Στην πραγματικότητα, δεν πραγματοποιείται αποκοπή αρχείου· αντίθετα, δημιουργείται ένα αρχείο δείκτη στο τμήμα, το οποίο περιγράφει τον τύπο αρχείου, τη διαδρομή προς το αρχείο, την αρχή και το τέλος του τμήματος. Η δημιουργία και το άνοιγμα δεικτών σε θραύσματα ανατίθεται σε βοηθητικά προγράμματα που έφτιαξα ειδικά για αυτούς τους σκοπούς - αυτά είναι το mediafragmenter και το fragplayer. Ο πρώτος δημιουργεί, ο δεύτερος ανοίγει. Στην περίπτωση εγγραφών ήχου και βίντεο, το αρχείο πολυμέσων εκκινείται από μια συγκεκριμένη σε μια συγκεκριμένη θέση χρησιμοποιώντας τη συσκευή αναπαραγωγής VLC, επομένως πρέπει επίσης να βρίσκεται στο σύστημα. Στην αρχή ήθελα να το κάνω αυτό με βάση το mplayer, αλλά για κάποιο λόγο ήταν πολύ στραβά με την τοποθέτηση την κατάλληλη στιγμή.
Στο παράδειγμά μας, δημιουργείται το αρχείο "Duck Tales intro.fragpointer" (τοποθετείται σε ειδική θέση) και στη συνέχεια αναπαράγεται ένα κομμάτι από την αρχή του αρχείου (καθώς το –start δεν καθορίστηκε κατά τη δημιουργία) μέχρι το 59 δεύτερο σημάδι, μετά το οποίο κλείνει το VLC .

Ένα άλλο παράδειγμα είναι όταν αποφασίσαμε να κατηγοριοποιήσουμε μια παράσταση σε μια συναυλία ενός διάσημου καλλιτέχνη:

vitis assign Лепс "Спасите наши души" -f Григорий Лепc - Концерт Парус - песни Владимира Высоцкого.mp4 --fragname "Спасите наши души" --start 00:32:18 --finish 00:36:51

vitis open "Спасите наши души"

Όταν ανοίξει, το αρχείο θα συμπεριληφθεί στην επιθυμητή θέση και θα κλείσει μετά από τεσσεράμισι λεπτά.

Πώς λειτουργούν όλα + πρόσθετες λειτουργίες

Αποθήκευση κατηγοριών

Στην αρχή της σκέψης για την οργάνωση ενός συστήματος σημασιολογικών αρχείων, ήρθαν στο μυαλό τρεις τρόποι: μέσω της αποθήκευσης συμβολικών συνδέσμων, μέσω μιας βάσης δεδομένων, μέσω μιας περιγραφής σε XML. Η πρώτη μέθοδος κέρδισε, γιατί... αφενός, είναι εύκολο να εφαρμοστεί και αφετέρου, ο χρήστης έχει την ευκαιρία να δει κατηγορίες απευθείας από το σύστημα αρχείων (και αυτό είναι βολικό και σημαντικό). Στην αρχή της χρήσης Ψίθυρος Ο κατάλογος "Vitis" και το αρχείο διαμόρφωσης ".config/vitis/vitis.conf" δημιουργούνται στον αρχικό κατάλογο του χρήστη. Στο ~/Vitis δημιουργούνται κατάλογοι που αντιστοιχούν σε κατηγορίες και σε αυτούς τους καταλόγους κατηγορίας δημιουργούνται συμβολικοί σύνδεσμοι προς τα αρχικά αρχεία. Τα ψευδώνυμα κατηγορίας είναι επίσης απλώς σύνδεσμοι προς αυτά. Φυσικά, η παρουσία του καταλόγου «Vitis» στον αρχικό κατάλογο μπορεί να μην ταιριάζει σε κάποιους. Μπορούμε να μεταβούμε σε οποιαδήποτε άλλη τοποθεσία:

vitis service set path /mnt/MyFavoriteDisk/Vitis/

Σε ένα συγκεκριμένο σημείο, γίνεται σαφές ότι δεν έχει νόημα να κατηγοριοποιούμε αρχεία που είναι διάσπαρτα σε διαφορετικά μέρη, καθώς η τοποθεσία τους μπορεί να αλλάξει. Ως εκ τούτου, για αρχή, δημιούργησα έναν κατάλογο για τον εαυτό μου, όπου ανόητα πέταξα τα πάντα και τους έδωσα όλες τις κατηγορίες. Τότε αποφάσισα ότι θα ήταν ωραίο να επισημοποιήσω αυτή τη στιγμή σε επίπεδο προγράμματος. Έτσι εμφανίστηκε η έννοια του «χώρου αρχείων». Στην αρχή της χρήσης Ψίθυρος Δεν θα ήταν κακό να ρυθμίσετε αμέσως μια τέτοια τοποθεσία (όλα τα αρχεία που χρειαζόμαστε θα αποθηκευτούν εκεί) και να ενεργοποιήσετε την αυτόματη αποθήκευση:

vitis service add filespace /mnt/MyFavoriteDisk/Filespace/

vitis service set autosave yes

Χωρίς αυτόματη αποθήκευση, όταν χρησιμοποιείτε την υποεντολή "εκχώρηση", θα απαιτείται η σημαία --save εάν θέλετε να αποθηκεύσετε το αρχείο που προστέθηκε στο χώρο του αρχείου.

Επιπλέον, μπορείτε να προσθέσετε πολλούς χώρους αρχείων και να αλλάξετε τις προτεραιότητές τους· αυτό μπορεί να είναι χρήσιμο όταν υπάρχουν πολλά αρχεία και είναι αποθηκευμένα σε διαφορετικά μέσα. Δεν θα εξετάσω αυτήν τη δυνατότητα εδώ· λεπτομέρειες μπορείτε να βρείτε στη βοήθεια του προγράμματος.

Μετανάστευση συστήματος σημασιολογικών αρχείων

Ούτως ή άλλως, ο κατάλογος και οι χώροι αρχείων Vitis μπορεί θεωρητικά μερικές φορές να μετακινούνται από μέρος σε μέρος. Για να λειτουργήσει, δημιούργησα ένα ξεχωριστό βοηθητικό πρόγραμμα συντάκτης συνδέσμων, το οποίο μπορεί να επεξεργαστεί μαζικά συνδέσμους, αντικαθιστώντας τμήματα της διαδρομής με άλλα:

cp -r /mnt/MyFavoriteDisk/Vitis/ ~/Vitis
link-editor -d ~/Vitis/ -f /mnt/MyFavoriteDisk/Vitis/ -r ~/Vitis/ -R
cp -r /mnt/MyFavoriteDisk/Filespace/ ~/MyFiles
link-editor -d ~/Vitis/ -f /mnt/FlashDrive-256/Filespace/ -r ~/MyFiles -R

Στην πρώτη περίπτωση, αφού έχουμε μεταφερθεί από το /mnt/MyFavoriteDisk/Vitis/ στον αρχικό κατάλογο, οι συμβολικοί σύνδεσμοι που σχετίζονται με τα ψευδώνυμα υποβάλλονται σε επεξεργασία. Στη δεύτερη περίπτωση, μετά την αλλαγή της θέσης του χώρου αρχείων, όλοι οι σύνδεσμοι στο Vitis αλλάζουν σε νέους σύμφωνα με το αίτημα αντικατάστασης μέρους της διαδρομής τους.

Αυτόματες κατηγορίες

Εάν εκτελέσετε την εντολή vitis service get autocategorization, μπορείτε να δείτε ότι από προεπιλογή, οι αυτόματες κατηγορίες εκχωρούνται κατά μορφή (Μορφή και Τύπος) και κατά επέκταση αρχείου (Επέκταση).

Αυτό είναι χρήσιμο όταν, για παράδειγμα, πρέπει να βρείτε κάτι ανάμεσα σε PDF ή να δείτε τι έχετε αποθηκεύσει από το EPUB και το FB2, μπορείτε απλά να εκτελέσετε το αίτημα

vitis show Format/MOBI u: Format/FB2

Απλώς, τα τυπικά εργαλεία GNU/Linux, όπως το αρχείο ή ο τύπος mime, δεν με ταιριάζουν ακριβώς επειδή δεν καθορίζουν πάντα σωστά τη μορφή· έπρεπε να κάνω τη δική μου υλοποίηση με βάση τις υπογραφές και τις επεκτάσεις αρχείων. Γενικά, το θέμα του καθορισμού μορφών αρχείων είναι ένα ενδιαφέρον θέμα για έρευνα και αξίζει ένα ξεχωριστό άρθρο. Προς το παρόν μπορώ να πω ότι ίσως δεν έχω παράσχει πραγματική αναγνώριση για όλες τις μορφές στον κόσμο, αλλά σε γενικές γραμμές λειτουργεί ήδη καλά. Είναι αλήθεια ότι το EPUB ορίζει πλέον τη μορφή ως ZIP (γενικά, αυτό δικαιολογείται, αλλά στην πράξη αυτό δεν πρέπει να θεωρείται φυσιολογική συμπεριφορά). Προς το παρόν, θεωρήστε αυτή τη δυνατότητα πειραματική και αναφέρετε τυχόν σφάλματα. Σε περίεργες καταστάσεις, μπορείτε πάντα να χρησιμοποιείτε κατηγορίες επεκτάσεων αρχείων, για παράδειγμα, Extension/epub.

Εάν είναι ενεργοποιημένες οι αυτόματες κατηγορίες κατά μορφή, ενεργοποιούνται επίσης οι αυτόματες κατηγορίες που ομαδοποιούν ορισμένες μορφές ανά τύπο: "Αρχεία", "Εικόνες", "Βίντεο", "Ήχος" και "Έγγραφα". Θα δημιουργηθούν επίσης τοπικά ονόματα για αυτές τις υποκατηγορίες.

Τι δεν λέγεται

Ψίθυρος Αποδείχθηκε ότι ήταν ένα πολύ πολύπλευρο εργαλείο και είναι δύσκολο να καλύψουμε τα πάντα ταυτόχρονα. Επιτρέψτε μου να αναφέρω εν συντομία τι άλλο μπορείτε να κάνετε:

  • Οι κατηγορίες μπορούν να διαγραφούν και να αφαιρεθούν από αρχεία.
  • Τα αποτελέσματα των ερωτημάτων έκφρασης μπορούν να αντιγραφούν στον καθορισμένο κατάλογο.
  • Τα αρχεία μπορούν να εκτελεστούν ως προγράμματα.
  • Η εντολή show έχει πολλές επιλογές, για παράδειγμα, ταξινόμηση κατά όνομα/ημερομηνία τροποποίησης ή πρόσβαση/μέγεθος/επέκταση, εμφάνιση ιδιοτήτων αρχείων και διαδρομών προς τα πρωτότυπα, δυνατότητα εμφάνισης κρυφών αρχείων κ.λπ.
  • Όταν αποθηκεύετε συνδέσμους σε πηγές Internet, μπορείτε επίσης να αποθηκεύσετε τοπικά αντίγραφα σελίδων HTML.

Πλήρεις λεπτομέρειες μπορείτε να βρείτε στη βοήθεια χρήστη.

Προοπτικές

Οι σκεπτικιστές λένε συχνά ότι «κανείς δεν θα ορίσει μόνος του αυτές τις ετικέτες». Χρησιμοποιώντας το δικό μου παράδειγμα, μπορώ να αποδείξω το αντίθετο: Έχω ήδη κατηγοριοποιήσει περισσότερα από έξι χιλιάδες αρχεία, έχω δημιουργήσει περισσότερες από χίλιες κατηγορίες και ψευδώνυμα και άξιζε τον κόπο. Όταν μια ομάδα vitis open План ανοίξτε τη λίστα εργασιών σας ή όταν με μία εντολή vitis open LaTeX Όταν ανοίγετε το βιβλίο του Stolyarov για το σύστημα διάταξης LaTeX, είναι ήδη ηθικά δύσκολο να χρησιμοποιήσετε το σύστημα αρχείων «με τον παλιομοδίτικο τρόπο».

Σε αυτή τη βάση, προκύπτουν μια σειρά από ιδέες. Για παράδειγμα, μπορείτε να δημιουργήσετε ένα αυτόματο ραδιόφωνο που ενεργοποιεί θεματική μουσική σύμφωνα με τον τρέχοντα καιρό, τις αργίες, την ημέρα της εβδομάδας, την ώρα της ημέρας ή του έτους. Ακόμη πιο κοντά στο θέμα είναι ένα πρόγραμμα αναπαραγωγής μουσικής που γνωρίζει κατηγορίες και μπορεί να αναπαράγει μουσική με έκφραση με λειτουργίες σε κατηγορίες όπως σε σετ. Είναι χρήσιμο να φτιάξετε έναν δαίμονα που θα παρακολουθεί τον κατάλογο "Λήψεις" και θα προσφέρει την κατηγοριοποίηση νέων αρχείων. Και, φυσικά, θα πρέπει να φτιάξουμε έναν κανονικό γραφικό σημασιολογικό διαχειριστή αρχείων. Κάποτε δημιούργησα ακόμη και μια διαδικτυακή υπηρεσία για την επιχείρηση για συλλογική χρήση αρχείων, αλλά δεν ήταν προτεραιότητα και έγινε άσχετη, αν και πέτυχε υψηλό επίπεδο απόδοσης. (Λόγω σημαντικών αλλαγών στο Ψίθυρος, δεν είναι πλέον χρησιμοποιήσιμο.)

εδώ είναι ένα μικρό demo

Κατηγορίες αντί για καταλόγους ή το Semantic File System για Linux

Συμπέρασμα

Vitis δεν είναι η πρώτη προσπάθεια να αλλάξω ριζικά το στυλ εργασίας με δεδομένα, αλλά θεώρησα σημαντικό να εφαρμόσω τις ιδέες μου και να κάνω την υλοποίηση δημόσια διαθέσιμη με την άδεια GNU GPL. Για ευκολία, έχει δημιουργηθεί ένα πακέτο deb για το x86-64· θα πρέπει να λειτουργεί σε όλες τις σύγχρονες διανομές του Debian. Υπήρχαν μικρές δυσκολίες στο ARM (ενώ όλα τα άλλα προγράμματα αφορούσαν Ψίθυρος, δουλεύει καλά), αλλά στο μέλλον θα δημιουργηθεί ένα πακέτο εργασίας για αυτήν την πλατφόρμα (armhf). Έχω σταματήσει να δημιουργώ πακέτα RPM προς το παρόν λόγω προβλημάτων στο Fedora 30 και της δυσκολίας εξάπλωσης σε πολλές διανομές RPM, αλλά τα μεταγενέστερα πακέτα θα εξακολουθήσουν να γίνονται για τουλάχιστον δύο από αυτά. Στο μεταξύ μπορείτε να χρησιμοποιήσετε make && make install ή checkinstall.

Σας ευχαριστώ όλους για την προσοχή σας! Ελπίζω αυτό το άρθρο και αυτό το έργο να είναι χρήσιμα.

Σύνδεσμος στο αποθετήριο έργου

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο