Efter flera tester med filutforskaren SpaceFM och läsa manualen för detta program kunde jag inse att det innehåller sina egna dialogrutor, och det bästa av allt är att de kan integreras med varandra, det kommer inte vara nödvändigt att öppna en annan typ av dialogruta för att utföra en viss åtgärd . Tack vare det faktum att dessa dialogrutor är specifika för programmet SpaceFM du behöver inte ladda ett externt program för att använda dem, vilket minskar RAM-förbrukningen och påskyndar operationerna mellan dem.
Låt oss titta på flera exempel på dialogrutor som försöker imitera den normala funktionen för andra dialogrutor, som att be om bekräftelse för att fortsätta med en viss process, välja en lista med alternativ etc.
- Meddelande eller varning
spacefm -g --hbox --icon notification-gsm-disconnected --hbox --label "Alerta de Seguridad Intruso en la RED" --button close
- Be om bekräftelse för att fortsätta med en viss process:
spacefm -g --hbox --icon gtk-stop --hbox --label "Esta seguro de continuar" --button no echo "falso" -- close --button yes echo "verdad" -- close 2>&1 |grep verdad > /dev/null && comando-a-continuación
- Ange en viss liten text
spacefm -g --hbox --icon gtk-edit --vbox --label "Teclee un texto cualquiera" --input --button ok | grep dialog_input1= | sed 's/dialog_input1=//' | awk -F "'*" '{print $2}' | grep [[:alnum:]]
- Ange flera rader med text
spacefm -g --hbox --icon gtk-edit --vbox --label "Teclee varias lineas de texto cualquiera" --window-size 500x300 --input-large --button ok | grep dialog_inputlarge1= | sed 's/dialog_inputlarge1=//' | awk -F "'*" '{print $2}' | grep [[:alnum:]]
- Ange ett specifikt lösenord
spacefm -g --hbox --icon locked --vbox --label "Tecle la contraseña" --password --button ok | grep dialog_pasword1= | sed 's/dialog_password1=//' | awk -F "'*" '{print $2}' | grep [[:alnum:]]
- Textfilvisare
spacefm -g --hbox --icon gtk-edit --hsep --vbox --label "Visor de Archivos de Texto" --viewer /etc/fstab --button close > /dev/null
- Textfilredigerare
spacefm -g --hbox --icon gtk-edit --hsep --vbox --label "Visor de Archivos de Texto" --editor /etc/fstab --button cancel source /dev/null -- close --button save source $HOME/fichero-salida.txt -- close > /dev/null
Bilden liknar den i textvisaren.
- Dialogruta «alternativväljare» med rullgardinsmeny och inte redigerbar.
spacefm -g --label "Seleccione la acción a realizar" --drop "Listar" "Tamaño" "Borrar" "null" -- "Listar" --button cancel set drop1 "null" -- close --button ok | grep dialog_drop1= | sed 's/dialog_drop1=//' | awk -F "'*" '{print $2}' | sed 's/Listar/ls/' | sed 's/Tamaño/du -sh/' | sed 's/Borrar/rm -r/' | grep -v null
- Dialogrutan Alternativväljare med redigerbar rullgardinsmeny.
spacefm -g --label "Seleccione la acción a realizar" --combo "Listar" "Tamaño" "Borrar" "null" -- "Listar" --button cancel set combo1 "null" -- close --button ok | grep dialog_combo1= | sed 's/dialog_combo1=//' | awk -F "'*" '{print $2}' | sed 's/Listar/ls/' | sed 's/Tamaño/du -sh/' | sed 's/Borrar/rm -r/' | grep -v null
Bild Liknar den föregående.
- Dialogrutan för att lista alternativ och välja 1 åtgärd.
spacefm -g --label "Seleccione la acción a realizar" --list "Listar" "Tamaño" "Borrar" -- "Listar" --button cancel --button ok | grep dialog_list1= | sed 's/dialog_list1=//' | awk -F "'*" '{print $2}' | sed 's/Listar/ls/' | sed 's/Tamaño/du -sh/' | sed 's/Borrar/rm -r/' | grep [[:alnum:]]
- Dialogrutan för att lista alternativ och välja mer än en åtgärd.
spacefm -g --label "Seleccione la acción a realizar" --mlist "Opcion 1" "Opcion 2" "Opción 3" -- "Listar" --button cancel --button ok echo dia-"%"mlist1 -- close | grep dia- | sed 's/dia- //g' | sed 's/dialog_mlist1=//' | grep [[:alnum:]]
Bild Liknar den föregående.
- Dialogruta för att välja filer eller kataloger:
spacefm -g --chooser /media/ --button cancel set chooser1 /dev/null -- close --button ok | grep dialog_chooser1= | awk -F \' '{print $2}'
- Alternativ för filväljare
–Spara (istället för att välja inmatningsfilen, välj utdatafilen)
–Dir (endast valda mappar)
–Multi (Välj flera filer)
–Filter (Filtrerar vilken typ av fil som kommer att visas, det kan vara genom mimetypen eller filtillägget)Exempelvis:
–Filtertext / vanlig
–Filter '* .txt'
–Filter '* .txt: *. Doc: *. Html' (Metod för att filtrera flera tillägg åtskilda av kolon :)
Detta var bara ett exempel på vad dessa dialogrutor kan göra, eftersom de mestadels kan integreras i en enda dialogruta som bildar en ny unik ruta:
- Om vi till exempel vill att en dialogruta ska ange lösenordet två gånger, behöver vi bara upprepa alternativet –lösenord två gånger. Låt oss titta på ett exempel där det kontrolleras att lösenorden matchar innan vi fortsätter att vidta några åtgärder.
För att skydda en PDF mot kopiering som möjliggör läsning (Den här metoden är endast giltig för att arbeta med en enda PDF):
spacefm -g --label "Teclee la contraseña" --password --label "Repita la Contraseña" --password --mlist "Printing" "DegradedPrinting" "ModifyContents" "CopyContents" "ScreenReaders" "ModifyAnnotations" "AllFeatures" --button aplicar bash -c "[ '"%"password1' = '"%"password2' ] && pdftk '"%f"' output '`basename %n | sed 's/\.[[:alnum:]]*$//'`-locked.pdf' allow "%"mlist1 owner_pw '""%"password1"' " -- close
Anmärkning 1: För att undvika expansion i skalet, bifoga hela kommandoraden som ska köras i citattecken genom att placera bash -c framför den så att den tolkar dessa rader, så att vi kan använda speciella operatorer som & | bland andra.Anmärkning 2: Eftersom kommandona utförs mellan citattecken «» kan du inte använda dem för att separera de tomma fälten istället bör du använda det enda citattecknet »och därmed lämna '/ path / to / folder / file with space1', om du vissa alias som% lösenord måste först separera procenten med dubbla citattecken och alias med procenten mellan citattecken och det återkapslas med enstaka citat »och lämnar därmed '» »%» lösenord1 ″', om vi ska använda% fo% n bör först sätta det i dubbla citat och sedan i enkla citat, vilket gör det till '»% f»'.Anmärkning 3: Om du vill skydda den mot öppning behöver du bara ändra alternativet owner_pw till user_pw. - För att skapa ett alias för varje data som vi har angett i dialogrutan kan vi använda följande formulär (användbart när du skapar skript):
eval "`spacefm -g --input --input --button ok`"
Vi kan kontrollera att det värde som vi anger i dialogrutan har tilldelats
input 1
echo $dialog_input1 - Sök efter vissa filer och välj att öppna eller ta bort dem:
find %F -name *.txt > $HOME/.derr && SpaceFM -g --mlist @$HOME/.derr --button abrir bash -c "mimeopen -M "%"mlist1" --button borrar bash -c "rm "%"mlist1" – close && rm $HOME/.derr
Kompletterar
–Hsep (horisontell linje)
–Vsep (vertikal linje)
–Knapp (knapp)
–Free-button (Free-knapp, som kan placeras i andra områden än fönstrets botten)
–Hbox (för att ordna knapparna horisontellt)
–Vbox (för att ordna knappar vertikalt)
–Fönster-ikon (fönsterikon)
–Ikon (Visa en ikon)
–Märke (För att skriva in texten under fönsterramen)
–Bild (liknar –ikonalternativ)
–Timeout (stäng fönstret automatiskt när nedräkningen är slut)
–Fönsterstorlek (Välj fönsterstorlek 600 × 400)
Det finns andra sätt att arbeta med dessa dialogrutor antingen i skript eller på annat sätt, för mer dokumentation se sidan på manual för SpaceFM i avsnittet dialogruta.
Imponerande ... Inga ord. Godkänna!!!!
mycket bra!, utmärkt artikel, låt oss prova tipsen ^^
Mycket komplett artikel. Dessa typer av poster, så detaljerade och detaljerade, är det som ger prestige och berömmelse till en webbplats. Grattis!
Fantastisk. Jag hade ingen aning om att detta kunde göras med spacefm. Det verkar mer fullständigt än xdialog eller zenity. Mycket bra artikel.
För något påminner mig om Glade
Jag hade ingen aning om att SpaceFM kunde göra det Oo