Keine Ahnung, ob die Art des Fadens im Forum ankommt, ich probiere es einfalch mal.
Resultiert aus Beitrag in Baustelle/find.
Ich werde das so(in Etappen) schreiben, dass es Jeder gut nachvollziehen kann. Wer was hinzuzufügen hat, zur zu.
Falls bisher eine Berührung mit YAD eher nix war, dann vllt. jetzt.
Hier ist erst mal eine Eingabemaske, erstellt durch YAD (vllt. passt aufgebohrtes Zenity)
https://packages.ubuntu.com/noble/yad
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | #!/bin/bash if [ "$1" ]; then if [ -d "$1" ]; then dir="$1" echo "$dir" > ~/.cache/dir-selektiert fi else read dir < ~/.cache/dir-selektiert fi #notify-send "$dir" yadeingabe=$(yad --title="Dateien suchen - Muster eingeben" \ --width=500 --center --borders=40 --buttons-layout=center \ --form --selectable-labels \ --separator=";" \ --text="wiki.ubuntuusers.de/find/\n-mmin -20\n-mtime -3 # jünger als 3 Tage, + und - kann gesetzt werden\n-n-amin -5 # sucht nach Dateien, auf die zuletzt vor n bis n+1 zugegriffen (a=accessed)\n-size +512k -size +100M -size +1G" \ --field=Muster "**" \ --field=Param "" \ --field="Groß Kleinschreibung ignorieren:CHK" true \ --field="Tiefe:NUM" 0 \ --field="Ordner:DIR" "$dir" \ --field="Anwen:CBE" wunscheditor\!mpv\!okular\!gwenview\!vlc\!audacious\!xdg-open \ --field="Bilder:CHK" false \ --field="Video:CHK" false \ --field="Audio:CHK" false \ --field="Dokumente:CHK" false \ --button="kfind":"kfind" \ --button="Catfish":"catfish" \ --button="Beenden":1 \ --button="OK":0) ret=$?;if ! [ "$ret" -eq "0" ]; then exit;fi muster=$(echo "$yadeingabe" | awk -F ";" {'print $1'}) parameter=$(echo "$yadeingabe" | awk -F ";" {'print $2'}) namegrossklein=$(echo "$yadeingabe" | awk -F ";" {'print $3'}) tiefe=$(echo "$yadeingabe" | awk -F ";" {'print $4'}) ordner=$(echo "$yadeingabe" | awk -F ";" {'print $5'}) anwendung=$(echo "$yadeingabe" | awk -F ";" {'print $6'}) bilder=$(echo "$yadeingabe" | awk -F ";" {'print $7'}) video=$(echo "$yadeingabe" | awk -F ";" {'print $8'}) audio=$(echo "$yadeingabe" | awk -F ";" {'print $9'}) text=$(echo "$yadeingabe" | awk -F ";" {'print $10'}) echo "$ordner" > ~/.cache/dir-selektiert |
Der gesamte Code kann ins Terminal kopiert und getestet werden. Die Ausgaben wie
echo "$yadeingabe" echo "$parameter" echo "$ordner" #usw.
wären dann das Wichtige."dir" zu Anfang des Scriptes ist der Ordnerpfad der zu Beginn ausgelesen/gesetzt wird. So ist bei Wiederaufruf des Scriptes der letzte Pfad verfügbar.(echo "$ordner";echo "$dir") Das Script kann was den Ordnerpfad betrifft, sowohl per Terminalübergabe, als auch vom Dateimanager aus aufgerufen werden.
Moderiert von tomtomtom:
Aus dem Supportbereich verschoben, da keine Supportfrage vorhanden.