หลังจากการทดสอบหลายครั้งกับ file explorer สเปซเอฟเอ็ม และอ่านคู่มือของโปรแกรมนี้ฉันเห็นว่ามีกล่องโต้ตอบของตัวเองและสิ่งที่ดีที่สุดคือสามารถรวมเข้าด้วยกันได้ไม่จำเป็นต้องเปิดกล่องโต้ตอบประเภทอื่นเพื่อดำเนินการบางอย่าง ด้วยความจริงที่ว่ากล่องโต้ตอบเหล่านี้เฉพาะสำหรับโปรแกรม สเปซเอฟเอ็ม คุณไม่ต้องโหลดโปรแกรมภายนอกเพื่อใช้งานซึ่งจะช่วยลดการใช้หน่วยความจำ RAM และเร่งการทำงานระหว่างกัน
ลองดูตัวอย่างหลาย ๆ กล่องโต้ตอบที่พยายามเลียนแบบการทำงานปกติของกล่องโต้ตอบอื่น ๆ เช่นการขอให้ยืนยันเพื่อดำเนินการตามกระบวนการที่กำหนดต่อไปการเลือกรายการตัวเลือกเป็นต้น
- การแจ้งเตือนหรือการแจ้งเตือน
spacefm -g --hbox --icon notification-gsm-disconnected --hbox --label "Alerta de Seguridad Intruso en la RED" --button close
- ขอคำยืนยันเพื่อดำเนินการตามขั้นตอนต่อไป:
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
- ป้อนข้อความเล็ก ๆ
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:]]
- ป้อนข้อความหลายบรรทัด
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:]]
- ป้อนรหัสผ่านเฉพาะ
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:]]
- โปรแกรมดูไฟล์ข้อความ
spacefm -g --hbox --icon gtk-edit --hsep --vbox --label "Visor de Archivos de Texto" --viewer /etc/fstab --button close > /dev/null
- โปรแกรมแก้ไขไฟล์ข้อความ
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
รูปภาพจะคล้ายกับโปรแกรมดูข้อความ
- กล่องโต้ตอบ«ตัวเลือกตัวเลือก»พร้อมเมนูแบบเลื่อนลงและไม่สามารถแก้ไขได้
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
- กล่องโต้ตอบตัวเลือกตัวเลือกพร้อมเมนูแบบเลื่อนลงที่แก้ไขได้
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
ภาพคล้ายกับภาพก่อนหน้า
- กล่องโต้ตอบเพื่อแสดงรายการตัวเลือกและเลือก 1 การกระทำ
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:]]
- กล่องโต้ตอบเพื่อแสดงรายการตัวเลือกและเลือกมากกว่าหนึ่งการกระทำ
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:]]
ภาพคล้ายกับภาพก่อนหน้า
- กล่องโต้ตอบเพื่อเลือกไฟล์หรือไดเร็กทอรี:
spacefm -g --chooser /media/ --button cancel set chooser1 /dev/null -- close --button ok | grep dialog_chooser1= | awk -F \' '{print $2}'
- ตัวเลือกตัวเลือกไฟล์
- บันทึก (แทนที่จะเลือกไฟล์อินพุตให้เลือกไฟล์เอาต์พุต)
–Dir (เลือกโฟลเดอร์เท่านั้น)
–Multi (เลือกหลายไฟล์)
–Filter (กรองประเภทของไฟล์ที่จะแสดงซึ่งอาจเป็นผ่าน mimetype หรือนามสกุลของไฟล์)ตัวอย่าง:
- กรองข้อความ / ธรรมดา
- ตัวกรอง '* .txt'
–Filter '* .txt: *. doc: *. html' (วิธีการกรองส่วนขยายหลายรายการโดยคั่นด้วยโคลอน :)
นี่เป็นเพียงตัวอย่างหนึ่งของสิ่งที่กล่องโต้ตอบเหล่านี้สามารถทำได้เนื่องจากส่วนใหญ่สามารถรวมเข้ากับกล่องโต้ตอบเดียวเพื่อสร้างกล่องใหม่ที่ไม่ซ้ำใคร:
- ตัวอย่างเช่นหากเราต้องการให้กล่องโต้ตอบป้อนรหัสผ่านสองครั้งเราจะต้องทำซ้ำตัวเลือก - รหัสผ่าน 2 ครั้งเท่านั้น ลองดูตัวอย่างที่ตรวจสอบว่ารหัสผ่านตรงกันก่อนดำเนินการใด ๆ ต่อไป
ในการป้องกันไฟล์ PDF จากการคัดลอกโดยอนุญาตให้อ่าน (วิธีนี้ใช้ได้กับ 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
หมายเหตุ 1: เพื่อหลีกเลี่ยงการขยายในเชลล์ให้ใส่บรรทัดคำสั่งทั้งหมดที่จะดำเนินการในเครื่องหมายคำพูดโดยใส่ bash -c ไว้ข้างหน้าเพื่อตีความบรรทัดเหล่านี้ดังนั้นเราจึงสามารถใช้ตัวดำเนินการพิเศษเช่น & | ท่ามกลางคนอื่น ๆ.หมายเหตุ 2: เนื่องจากคำสั่งถูกสร้างขึ้นระหว่างเครื่องหมายคำพูด«»จึงไม่สามารถใช้เพื่อแยกฟิลด์ว่างได้ แต่ต้องใช้เครื่องหมายคำพูดเดียว»จึงปล่อยให้ '/ path / to / folder / file ที่มี space1' หากใช้ นามแฝงบางชื่อเช่น% รหัสผ่านจะต้องแยกเปอร์เซ็นต์ด้วยเครื่องหมายคำพูดคู่และนามแฝงที่มีเปอร์เซ็นต์ระหว่างเครื่องหมายคำพูดและจะถูกห่อหุ้มใหม่ด้วยเครื่องหมายคำพูดเดี่ยว»จึงออกจาก "»»% »รหัสผ่าน 1″" หากเราจะใช้% fo % n ต้องใส่ไว้ในเครื่องหมายคำพูดคู่ก่อนจากนั้นจึงใส่เครื่องหมายคำพูดเดี่ยวจึงทำให้เป็น "»% f »"หมายเหตุ 3: หากคุณต้องการป้องกันการเปิดคุณเพียงแค่เปลี่ยนตัวเลือก owner_pw เป็น user_pw - ในการสร้างนามแฝงให้กับข้อมูลแต่ละรายการที่เราป้อนในกล่องโต้ตอบเราสามารถใช้แบบฟอร์มต่อไปนี้ (มีประโยชน์เมื่อสร้างไฟล์ สคริปต์):
eval "`spacefm -g --input --input --button ok`"
เราสามารถตรวจสอบว่าได้กำหนดค่าที่เราป้อนในกล่องโต้ตอบแล้ว
input 1
echo $dialog_input1 - ค้นหาไฟล์บางไฟล์และเลือกเปิดหรือลบ:
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
เติมเต็ม
–Hsep (เส้นแนวนอน)
–Vsep (เส้นแนวตั้ง)
–Button (ปุ่ม)
- ปุ่มฟรี (ปุ่มฟรีซึ่งสามารถวางตำแหน่งในพื้นที่อื่นนอกเหนือจากที่ด้านล่างของหน้าต่าง)
–Hbox (เพื่อจัดเรียงปุ่มในแนวนอน)
–Vbox (เพื่อจัดเรียงปุ่มในแนวตั้ง)
- ไอคอนหน้าต่าง (ไอคอนหน้าต่าง)
–Icon (แสดงไอคอน)
–Label (ในการป้อนข้อความด้านล่างกรอบหน้าต่าง)
–Image (คล้ายกับตัวเลือก –icon)
- หมดเวลา (ปิดหน้าต่างโดยอัตโนมัติเมื่อการนับถอยหลังสิ้นสุดลง)
–Window-size (เลือกขนาดหน้าต่าง 600 × 400)
มีวิธีอื่นในการทำงานกับกล่องโต้ตอบเหล่านี้ทั้งในสคริปต์หรืออีกวิธีหนึ่งสำหรับเอกสารเพิ่มเติมโปรดดูที่หน้าของ คู่มือของ สเปซเอฟเอ็ม ในส่วน บทสนทนา.
ประทับใจ ... ไร้คำบรรยาย อนุมัติ !!!!
ดีมาก!, บทความยอดเยี่ยมมาลองเคล็ดลับกันนะครับ ^^
บทความสมบูรณ์มาก รายการประเภทนี้ที่ละเอียดและละเอียดมากจึงเป็นสิ่งที่สร้างชื่อเสียงและชื่อเสียงให้กับเว็บไซต์ ยินดีด้วย!
น่าอัศจรรย์. ฉันไม่รู้ว่ามันสามารถทำได้ด้วย spacefm ดูเหมือนว่าสมบูรณ์กว่า xdialog หรือ zenity บทความที่ดีมาก
สำหรับบางสิ่งบางอย่างทำให้ฉันนึกถึงเกลด
ฉันไม่รู้เลยว่า SpaceFM สามารถทำ Oo ได้