LinuxでZenityを使って簡単なグラフィカルシェルスクリプトを作成する方法

目次:

LinuxでZenityを使って簡単なグラフィカルシェルスクリプトを作成する方法 - ブログ 2023
LinuxでZenityを使って簡単なグラフィカルシェルスクリプトを作成する方法 - ブログ 2023
Anonim
Zenityは、単一のコマンドでシェルスクリプトにグラフィカルインタフェースを追加します。シェルスクリプトは、反復的なタスクを自動化する優れた方法ですが、通常は端末に限定されています.Zenityはそれらを端末からデスクトップに持ち込みます。
Zenityは、単一のコマンドでシェルスクリプトにグラフィカルインタフェースを追加します。シェルスクリプトは、反復的なタスクを自動化する優れた方法ですが、通常は端末に限定されています.Zenityはそれらを端末からデスクトップに持ち込みます。

これまでシェルスクリプトについて紹介してきました。シェルスクリプトを使い始めるにあたって、プログラマーになる必要はありません。Linuxターミナルコマンドに関する知識はほとんど必要ありません。

ゼニスの取得

ZenityにはデフォルトでUbuntuが付属しています。 KubuntuなどのUbuntuの派生物を使用している場合は、次のコマンドで手動でインストールする必要があります。

sudo apt-get install zenity

ZenityはGNOMEの一部であるため、GNOMEデスクトップを使用するLinuxディストリビューションには既に含まれているはずです。あなたのパッケージマネージャーに 優しさ あなたがそれを持っていない場合は、パッケージ。

Zenityの使用

ターミナルからZenityで遊ぶことができます。シェルスクリプトで問題が発生したときにエラーウィンドウを作成したいとしましょう。次に使用できるコマンドの例を示します。

zenity –error –title=”An Error Occurred” –text=”A problem occurred while running the shell script.”

コマンドを実行すると、メッセージが表示されたウィンドウが表示されます。
コマンドを実行すると、メッセージが表示されたウィンドウが表示されます。
この単一のコマンドをシェルスクリプトの正しい場所に置くと、グラフィカルなエラーメッセージが表示されます。変数を使用して、エラーに関する詳細情報を含めることもできます。
この単一のコマンドをシェルスクリプトの正しい場所に置くと、グラフィカルなエラーメッセージが表示されます。変数を使用して、エラーに関する詳細情報を含めることもできます。

はい、いいえ質問をしたいとします。次のようなコマンドを使うことができます:

zenity –question –title=”Query” –text=”Would you like to run the script?”

シェルスクリプトでyesまたはnoの応答をキャッチし、ユーザーがクリックするボタンに基づいて異なるコマンドを実行することができます。
シェルスクリプトでyesまたはnoの応答をキャッチし、ユーザーがクリックするボタンに基づいて異なるコマンドを実行することができます。
テキスト入力ダイアログもあります:
テキスト入力ダイアログもあります:

zenity –entry –title=”Favorite Website” –text=”What is your favorite website?”

シェルスクリプトでユーザーの入力をキャッチし、変数として保存することができます。
シェルスクリプトでユーザーの入力をキャッチし、変数として保存することができます。
ファイルピッカー、カレンダー、その他のタイプのダイアログもあります。ダイアログの種類とそのオプションの一覧については、Zenityのマニュアルページを参照してください。
ファイルピッカー、カレンダー、その他のタイプのダイアログもあります。ダイアログの種類とそのオプションの一覧については、Zenityのマニュアルページを参照してください。

サンプルスクリプト

簡単なグラフィカルシェルスクリプトを作成するためにZenityを試してみましょう。 3つのコマンドだけで、グラフィカルなタイマープログラムを作成することができます:

#!/bin/bash # This script asks the user for a time, waits the specified amount # of time, and shows an alert dialog.

TIME=$(zenity –entry –title=”Timer” –text=”Enter a duration for the timer.

Use 5s for 5 seconds, 10m for 10 minutes, or 2h for 2 hours.”)

sleep $TIME

zenity –info –title=”Timer Complete” –text=”The timer is over.

It has been $TIME.”

Image
Image

私たちはここで余分なトリックを使用しています。最初のzenityコマンドからTIME変数の値を取得し、それをsleepコマンドに与えます。我々はまた、 / n zenityダイアログに新しいテキスト行を作成します。

シェルスクリプトを保存して、 chmod + x それに実行可能なパーミッションを与えるために、それを起動することができます。

Image
Image

期間を入力すると、スクリプトは標準を使用します 睡眠 バックグラウンドでカウントダウンするコマンド。 sleepコマンドのタイマーが終了すると、スクリプトはzenity infoメッセージを表示します。

このスクリプトのデスクトップまたはパネルのショートカットを作成し、端末に触れることなく実行することができます。
このスクリプトのデスクトップまたはパネルのショートカットを作成し、端末に触れることなく実行することができます。

これは、あなたがzenityでできることの表面を傷つけるだけです。あなたはもっと複雑なプログラムを作るためにそれを使うことができます。シェルスクリプトの詳細については、シェルスクリプトのforループの使用方法のガイドを参照してください。

人気のあるトピック

専門家の助言