Δημοσίευσα αυτό το άρθρο πριν από πολύ καιρό στο παλιό μου ιστολόγιο για το Xfce , βασισμένο σε ένα άλλο άρθρο που δημοσιεύτηκε στο ιστολόγιο Xubuntu , και το μοιράζομαι ξανά εδώ.
Αυτό που θα κάνουμε είναι να δημιουργήσουμε ένα εργαλείο αναζήτησης αρχείων για το Thunar χρησιμοποιώντας το Zenity . Το πρώτο πράγμα που πρέπει να κάνουμε είναι να εγκαταστήσουμε το Zenity:
$ sudo aptitude install zenity
Στη συνέχεια ανοίγουμε ένα τερματικό και βάζουμε:
$ mkdir ~/.bash-scripts/
Αυτό δημιουργεί έναν κατάλογο που θα περιέχει το σενάριο που θα εκτελέσει την ενέργεια. Τώρα δημιουργούμε ένα αρχείο με το όνομα search-for-files μέσα σε αυτόν ως εξής:
mousepad ~/.bash-scripts/search-for-files
και το επικολλάμε μέσα:
#! / bin / bash # search-for-files # αλλάξτε αυτό το σχήμα για να ταιριάζει στον εαυτό σας - Βρίσκω το zenity die από περίπου 1000 αποτελέσματα αλλά YMMV maxresults = 500 # ξανά, αλλάξτε τη διαδρομή προς το εικονίδιο για να ταιριάζει στον εαυτό σας. Αλλά ποιος δεν του αρέσει το ταγκό; window_icon = "/ usr / share / icons / Tango / scalable / actions / search.svg" # αυτό το σενάριο θα λειτουργήσει για οποιοδήποτε περιβάλλον που έχει bash και zenity, οπότε το filemanager είναι αποκλειστικά από εσάς! μπορείτε να προσθέσετε επιπλέον ορίσματα στη συμβολοσειρά αρκεί το τελευταίο όρισμα να είναι η διαδρομή του φακέλου που ανοίγετε filemanager = "thunar" window_title = "Αναζήτηση αρχείων" srcPath = "$ *" εάν! [-d "$ srcPath"]; τότε cd ~ / srcPath = `zenity --file-selection --directory --title =" $ window_title - Look in folder "--window-icon =" $ window_icon "" fi if [-d "$ srcPath"] ; τότε fragment = `zenity --entry --title =" $ window_title - Το όνομα περιέχει: "--window-icon =" $ window_icon "--text =" Οι συμβολοσειρές αναζήτησης λιγότεροι από 2 χαρακτήρες αγνοούνται "" αν! [$ {# fragment} -lt 2]; τότε (echo 10 O = $ IFS IFS = $ '\ n' files = (`find" $ srcPath "-iname" * $ fragment * "-printf \"% Y \ "\ \"% f \ "\ \" % k \ KB \ "\ \"% t \ "\ \"% h \ "\\\ n | head -n $ maxresults`) IFS = $ O echo 100 επιλεγμένο =` eval zenity --list --title = \ "$ {# files [@]} Βρέθηκαν αρχεία - $ window_title \" --window-icon = "$ window_icon" --width = "600" --height = "400" --text = \ "Αποτελέσματα αναζήτησης : \ "--print-column = 5 - στήλη \" Τύπος \ "- στήλη \" Όνομα \ "- στήλη \" Μέγεθος \ "- στήλη \" Ημερομηνία τροποποίησης \ "- στήλη \" Διαδρομή \ "$ {files [@]}` if [-e "$ επιλεγμένο"]; τότε "$ filemanager" "$ επιλεγμένο"; fi) | zenity --progress --auto-close --pulsate --title = "Searching ..." --window-icon = "$ window_icon" --text = "Αναζήτηση \" $ fragment \ "" έξοδος fi fi
και του δίνουμε δικαιώματα εκτέλεσης:
chmod a+x ~/.bash-scripts/search-for-files
Τώρα δημιουργούμε ένα αντίγραφο ασφαλείας του αρχείου uca.xml:
$ sudo cp /etc/xdg/Thunar/uca.xml /etc/xdg/Thunar/uca.xml.old
στο οποίο θα θέσουμε στο τέλος αυτό:
<action>
<icon>/usr/share/icons/Tango/scalable/actions/search.svg</icon>
<name>Search for Files</name>
<command>bash ~/.bash-scripts/search-for-files %f</command>
<description>Search this folder for files</description>
<patterns>*</patterns>
<directories/>
</action>
Τώρα πρέπει να ανοίξουμε το Thunar » Επεξεργασία » Ρύθμιση παραμέτρων προσαρμοσμένων ενεργειών και να δημιουργήσουμε μια νέα. Στη συνέχεια, συμπληρώνουμε τα ακόλουθα πεδία:
Καρτέλα Básico:
Όνομα: Finder
Περιγραφή: Finder
Εντολή: bash ~ / .bash-scripts / search-for-files% f
Εικονίδιο: Επιλέγουμε αυτό που μας αρέσει περισσότερο.
Παραμένει με αυτόν τον τρόπο:
Τώρα στην καρτέλα Όροι εμφάνιση τα ακόλουθα πεδία:
Μοτίβο αρχείου: *
Εμφανίζεται εάν η επιλογή περιέχει: Κατάλογος.
Και μοιάζει με αυτό:
Τώρα στο Thunar, όταν ανοίγουμε το μενού με δεξί κλικ, η επιλογή αναζήτησης δεν εμφανίζεται:
Και αν κάνουμε κλικ σε αυτό, θα εμφανιστεί ένα παράθυρο όπου μπορούμε να εισαγάγουμε τα κριτήρια αναζήτησης:
Όταν ξεκινήσουμε την αναζήτηση θα δούμε κάτι σαν αυτό:
και τελικά το αποτέλεσμα:
Κάνοντας διπλό κλικ στο αποτέλεσμα, θα ανοίξει ένα παράθυρο Thunar που θα εμφανίζει τον φάκελο στον οποίο βρίσκεται το αρχείο. Αυτό βελτιώνει σημαντικά την απόδοση του περιβάλλοντος εργασίας Xfce.