Zenity - mencipta kotak dialog grafik (GTK+) dalam skrip baris dan shell

Zenity - mencipta kotak dialog grafik (GTK+) dalam skrip baris dan shell

GNU Linux, sistem operasi yang dibina dengan sangat kuat Kernel dipanggil Linux. Linux terkenal dengan operasi baris arahannya. Dengan mencipta Linux dalam pengkomputeran sehari.

Kotak grafik paparan zenity

Di sini dalam artikel ini kita akan membincangkan penciptaan dan pelaksanaan kotak dialog grafik mudah menggunakan Gtk+ Permohonan dipanggil "Zenity".

Apa itu Zenity?

Zenity adalah sumber terbuka dan aplikasi silang platform yang memaparkan Kotak dialog GTK+ dalam baris arahan dan menggunakan skrip shell. Ia membolehkan untuk bertanya dan menyampaikan maklumat kepada/dari shell dalam kotak grafik. Aplikasi ini membolehkan anda membuat kotak dialog grafik dalam talian arahan dan menjadikan interaksi antara pengguna dan shell sangat mudah.

Terdapat alternatif lain, tetapi tidak ada yang dibandingkan dengan kesederhanaan Zenity, Khususnya apabila anda tidak memerlukan pengaturcaraan yang kompleks. Zenity, alat yang mesti anda tangani.

Ciri -ciri Zenity

  1. Perisian FOSS
  2. Aplikasi platform silang
  3. Benarkan pelaksanaan kotak dialog GTK+
  4. Alat baris arahan
  5. Sokongan dalam skrip shell

Kegunaan

  1. Penciptaan GUI yang mudah
  2. Kurang ciri daripada alat kompleks lain
  3. Membolehkan skrip shell berinteraksi dengan pengguna GUI
  4. Penciptaan dialog mudah adalah mungkin untuk interaksi pengguna grafik

Sejak Zenity tersedia untuk semua platform utama yang diketahui, dan berdasarkan Perpustakaan GTK+, Program Zenity boleh dipindahkan ke/dari platform lain.

Pemasangan Zenity di Linux

Zentity secara lalai dipasang atau tersedia dalam repositori kebanyakan pengedaran Linux standard hari ini. Anda boleh menyemak sama ada dipasang ke mesin anda atau tidak dengan melaksanakan arahan berikut.

[dilindungi e -mel]: ~ $ zenity --version 3.8.0
[dilindungi e -mel]: ~ $ di mana zenity Zenity:/usr/bin/zenity/usr/bin/x11/zenity/usr/share/zenity/usr/share/man/man1/zenity.1.Gz

Sekiranya ia tidak dipasang, anda boleh memasangnya menggunakan Apt atau Yum Perintah seperti yang ditunjukkan di bawah.

[dilindungi e-mel]: ~ $ sudo apt-get pemasangan zenity [on Debian sistem berasaskan] [dilindungi e -mel]: ~# yum Pasang zenity [on Topi merah sistem berasaskan]

Lebih -lebih lagi anda juga boleh membinanya dari fail sumber, muat turun yang terkini Zenity pakej sumber (i.e. Versi 3 semasa.8) menggunakan pautan berikut.

  1. http: // ftp.gnome.org/pub/gnome/sumber/zenity/

Kotak dialog asas zenity

Beberapa dialog asas Zenity, yang boleh dipanggil terus dari baris arahan.

1. Bagaimana dengan dialog kalendar cepat?
[E -mel dilindungi]: ~# Zenity -Calendar
Dialog kalendar
2. Kotak dialog ralat
[E -mel dilindungi]: ~# Zenity --error
Dialog ralat
3. Kotak dialog entri teks umum
[E -mel dilindungi]: ~# Zenity --Entry
Dialog kemasukan
4. Dialog maklumat
[dilindungi e -mel]: ~# zenity - -info
Dialog Info
5. Kotak dialog soalan
[dilindungi e -mel]: ~# Zenity -Question
Kotak Soalan
6. Bar kemajuan
[E -mel dilindungi]: ~# Zenity --Progress
Bar kemajuan
7. Dialog skala
[E -mel dilindungi]: ~# Zenity -Skala
Kotak skala
8. Dialog kata laluan
[E -mel dilindungi]: ~# Zenity --Password
Kotak kata laluan
9. Kotak dialog Borang
[E -mel dilindungi]: ~# Zenity -Bentuk
Bentuk
10. Mengenai dialog
[dilindungi e -mel]: ~# Zenity -About
Mengenai Zenity

Buat Dialog Skrip Shell

Sekarang kita akan berbincang Dialog Zenity Penciptaan menggunakan skrip shell mudah di sini. Walaupun kita boleh membuat dialog tunggal dengan melaksanakan Zenity Perintah terus dari shell (seperti yang kita lakukan di atas) tetapi kemudian kita tidak dapat menghubungkan dua kotak dialog untuk mendapatkan hasil yang bermakna.

Bagaimana dengan kotak dialog interaktif yang mengambil input daripada anda, dan menunjukkan hasilnya.

#!/bin/bash first = $ (zenity --title = "nama pertama anda" --text "Apa nama pertama anda?"--Entry) Zenity - -Info --Title =" Welcome "--Text =" Mr./Cik. $ pertama "terakhir = $ (zenity --title =" nama belakang anda "--text" $ pertama Apa nama belakang anda?"--Entry) Zenity - -Info --Title =" Nice Meet you "--text =" Mr./Cik. $ pertama $ terakhir "

Simpan ke 'apa sahaja.sh'(secara konvensional) dan jangan lupa untuk membuatnya boleh dilaksanakan. Tetapkan 755 kebenaran pada apa sahaja.sh fail dan jalankan skrip.

[dilindungi e -mel]: ~# chmod 755 apa sahaja.sh [dilindungi e -mel]: ~# sh apa -apa.sh
Masukkan nama pertama anda Dialog Selamat Datang Masukkan nama belakang anda Mesej Selamat Datang

Mengenai penerangan skrip

Shebang aka hashbang konvensional

#!/bin/bash

Di bawah garis 'Pertama' adalah pemboleh ubah dan nilai pemboleh ubah dihasilkan pada waktu larian.

    1. '-Kemasukan'Bermakna Zenity diminta menjana kotak entri teks.
    2. '- tajuk ='mentakrifkan tajuk kotak teks yang dihasilkan.
    3. '-teks ='Tentukan teks yang tersedia di kotak entri teks.
Pertama = $ (Zenity --Title = "Nama Pertama Anda" --Text "Apa nama pertama anda?" -entri)

Baris fail skrip di bawah ini adalah untuk Generasi Maklumat (-info) kotak dialog, dengan tajuk "Selamat Datang" dan teks "MR./Cik.Pertama ”

Zenity - -Info --Title = "Welcome" --Text = "Mr./Cik. $ pertama "

Garis skrip ini serupa dengan nombor dua skrip kecuali di sini pembolehubah baru 'terakhir' ditakrifkan.

terakhir = $ (zenity --title = "nama belakang anda" --text "$ pertama apakah nama belakang anda?" -entri)

Baris terakhir skrip ini sekali lagi sama dengan baris ketiga skrip dan ia menghasilkan kotak dialog maklumat yang mengandungi kedua -dua pembolehubah '$ pertama' dan '$ terakhir'.

Zenity - -Info --Title = "Nice Meet you" --text = "Mr./Cik. $ pertama $ terakhir "

Untuk maklumat lanjut mengenai cara membuat kotak dialog tersuai menggunakan skrip shell, lawati di halaman rujukan berikut Zenity.

  1. https: // bantu.gnome.org/pengguna/zenity/stabil/

Dalam artikel seterusnya kami akan mengintegrasikan Zenity dengan lebih banyak skrip shell untuk GUI interaksi pengguna. Sehingga kemudian ditantikan dan disambungkan ke Tecmint. Jangan lupa memberi maklum balas berharga anda di bahagian komen.