GoGPT Best VPN GoSearch

OnWorksファビコン

g.parsergrass - クラウドでオンライン

Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターを介して、OnWorks の無料ホスティング プロバイダーで g.parsergrass を実行します。

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなど、複数の無料オンライン ワークステーションのいずれかを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド g.parsergrass です。

プログラム:

NAME


g.パーサー - GRASS スクリプトの完全なパーサー サポートを提供します。

KEYWORDS


一般、サポート、スクリプト

SYNOPSIS


g.パーサー - 助けて
g.パーサー [-s][-t][-n] ファイル名 [引数、...]

フラグ:
-t
翻訳用の文字列を出力する

-s
スクリプトを再度呼び出す代わりに、オプション値を標準出力に書き込みます

-n
ヌル文字で区切られたオプション値を標準出力に書き込みます

DESCRIPTION


当学校区の g.パーサー モジュールは、GRASS スクリプトの完全なパーサー サポートを提供します。
自動生成された GUI インターフェイス、ヘルプ ページ テンプレート、およびコマンド ライン オプション チェック。 の
このようにして、単純なスクリプトを非常に迅速に本格的な GRASS モジュールにすることができます。

OPTIONS


を除いて -s or -n スイッチが使用されると、引数は環境変数に格納されます。
スクリプトで使用します。 これらの変数の名前は「GIS_FLAG_ " フラグと
"GIS_OPT_ " オプションの場合。変数の名前は大文字に変換されます。
キー付きのオプションの例 がスクリプト ヘッダーで定義されていた場合、値は次のようになります。
変数で利用可能 GIS_OPT_INPUT およびキー付きフラグの値 f で利用可能になります
変数 GIS_FLAG_F.

フラグの場合、フラグが指定されている場合、値は「1」になり、指定されていない場合は「0」になります。

Status -s or -n スイッチが使用されると、オプションとフラグが標準出力に書き込まれます
フォーム opt_ =   国旗_ =、前に文字列 @ARGS_PARSED@.
この文字列が標準出力の最初の行として表示されない場合は、
スクリプトは次のようなスイッチで呼び出されました --html-説明. この場合、データ
によって書かれた g.パーサー to standard output は、スクリプトの標準出力にコピーする必要があります
逐語的に。 もし -s スイッチが使用されている場合、オプションとフラグは改行で区切られます。 もしも
  -n スイッチが使用されている場合、オプションとフラグはヌル文字で区切られます。

一般的なヘッダー定義は次のとおりです。
#%モジュール
#% 説明: g.parser テスト スクリプト
#%終わり
#%国旗
#% キー: f
#% 説明: フラグ
#%終わり
#%オプション
#% キー: ラスター
#% タイプ: 文字列
#% gisprompt: 古い、セル、ラスター
#% 説明: ラスター入力マップ
#% 必須: はい
#%終わり
{NULL} を使用すると、定義済みの説明またはラベルを非表示にすることができます。

パーサーは、定義済みの使用を許可します 標準化されました オプション   フラグ、のリストを参照してください
プログラマ マニュアルのオプションとフラグ。 例えば。 オプション
#%オプション
#% キー: ラスター
#% タイプ: 文字列
#% gisprompt: 古い、セル、ラスター
#% 説明: ラスター入力マップ
#% 必須: はい
#%終わり
として簡単に定義できます。
#%オプション G_OPT_R_MAP
#% キー: ラスター
#%終わり
パーサーは定義済みの定義を許可します ルール 使用済みオプションについて。 ルールの構文
セクションは次のとおりです。
#%ルール
#% 排他的: capfile_output、capfile
#%終わり
パーサーでは、「OR」条件を定義することもできます。たとえば、ラスター OR ベクトル (
詳細は以下を参照してください)、例: オプション:
#%ルール
#% 必要: ラスター、ベクター
#%終わり
たとえば、フラグの場合:
#%ルール
#% 必須: -i、-d、-c
#%終わり

注意事項


次の行を追加することで、オプションに複数の入力を許可するように指示できます。
#% 複数: はい
これは直接変更するだけですが、 使用法 ヘルプ画面のセクション、オプションの
環境文字列は、スクリプト内から簡単に解析できます。 例えば、個人
「input」という名前のオプションのコンマ区切りの ID は、次のように解析できます。
Bash シェル コード:
IFS=、
オプトイン $GIS_OPT_INPUT ; 行う
... "$opt"
行われ

「guisection」フィールドを各オプションとフラグに追加して、オプションがそのオプションであることを指定できます。
自動生成された GUI の複数のタブに表示されるはずです。 なしのオプション
guisection フィールドは、[必須] または [オプション] タブに移動します。 例えば:
#% guisection: タブ名
という名前のタブにそのオプションを配置します タブ名.

「key_desc」フィールドを各オプションに追加して、
モジュールの使い方のヘルプセクション。 例えば:
#% key_desc: ファイル名
に追加 オプションは、使用状況の概要 [input=filename] を作成します。

スクリプトを実行する場合 --o、パーサーはGRASS_OVERWRITE = 1を設定します。これは同じです
通過時の効果 --o スクリプトから実行されるすべてのモジュールに。 同様に、通過 - NS
or --v GRASS_VERBOSE をそれぞれ 0 または 3 に設定します。これは、渡すのと同じ効果があります。
- NS or --v スクリプトから実行されるすべてのモジュールに。 かどうかを確認するのではなく、
--o, - NS or --v GRASS_OVERWRITE および/または GRASS_VERBOSE をチェックする必要があります。
代わりは。 これらの変数が設定されている場合、スクリプトは、
によって設定されたかどうか --o, - NS or --v スクリプトに渡されるか、他の方法で設定されます。

条件付きの パラメータ


オプションを「必須」としてマークすると、パーサーが致命的なエラーを発生させます。
XNUMX つの例外を除いて、オプションは指定されません: フラグに suppress_required オプションがある場合、および
そのフラグが指定されている場合、すべての要件は無視されます。 この機能は、次のフラグを対象としています。
モジュールの「通常の操作」を放棄します。 例えば リングダルさん -f フラグ (サポートされているリスト
フォーマット) がそれを使用します。
ただし、一般に、オプションがオプションである場合、そのオプションを必須としてマークすることはできません。
suppress_required フラグの特殊なケース。 パーサーにはオプションを指定する機能があります
関係。

C の場合、関連する関数は lib/gis/parser_dependencies.c にある関数です。

スクリプトの場合、関係は「ルール」セクションを使用して指定されます。
#%ルール
#% 必要: 高度、高度
#%終わり
これらのオプションの少なくとも XNUMX つを指定する必要があることを指定します。 オプションとフラグの両方を指定できます
指定 (先頭の "-" はフラグを示します。使用可能なルール タイプは次のとおりです。

· 排他的: オプションの最大 XNUMX つを指定できます

· 必須: 少なくとも XNUMX つのオプションを指定する必要があります

· 必須: 最初のオプションが指定されている場合、後続のオプションの少なくとも XNUMX つ
も与えなければならない

· requires_all: 最初のオプションが指定されている場合、後続のすべてのオプションが指定されている必要があります
も与えられる

· 除外: 最初のオプションが指定されている場合、後続のオプションは指定できません。
与えられた

· 集団: すべてかゼロか。 いずれかのオプションを指定する場合は、すべてを指定する必要があります

自動化された SCRIPT 作成


- 脚本 GRASS コマンドに追加され、シェル出力を生成します。 書き出すには
g.パーサー シェルスクリプトの簡単なプロトタイピングのためのボイラープレート、フラグ - 脚本 追加できます
任意の GRASS コマンドに。 例:
v.in.db --script

カスタマーサービス ページ template (HTML)


--html-説明 GRASS コマンドに追加すると、関連するヘルプ ページが生成されます
HTML のテンプレート。 例:
v.in.db --html-説明

GUI ウィンドウを使用して入力ファイルを追加します。 パーサー (XML)


-- インターフェースの説明 GRASS コマンドに追加すると、関連するヘルプ ページが生成されます
XML のテンプレート。 例:
v.in.db --インターフェースの説明

ウェブ 処理 サービス (WPS)


--wps-プロセスの説明 GRASS コマンドに追加すると、Web 処理が生成されます
サービス プロセスの説明。 例:
v.in.db --wps-プロセスの説明

reStructuredText


-- 最初の説明 GRASS コマンドに追加すると、モジュール インターフェイスの説明が生成されます
軽量のマークアップ言語である reStructuredText で。 例:
v.in.db --rst-description
reStructuredText は、reST、ReST、または RST と省略されることがあります。 よく使うファイル
拡張子は.rstです。 Representational State Transfer (REST) と混同しないでください。
技術。

翻訳


g.パーサー スクリプトのオプションを翻訳するためのサポートを提供します。 で呼び出された場合
-t このようにスクリプトファイル名の前に切り替えます
g.parser -t 何らかのスクリプトファイル
g.パーサー 翻訳可能なオプションのテキストを標準出力に XNUMX 行に XNUMX つずつ出力します。
そして終了します。 これは、GRASS スクリプトを準備するためにビルド システム内で内部的に使用するためのものです。
翻訳。


以下のすべての例は、起動時にグラフィカル ユーザー インターフェイスを自動生成します。
フラグのパラメータ:

正しく実行するには、スクリプトを次のディレクトリにコピーする必要があります。
実行可能フラグが設定された $GRASS_ADDON_PATH 環境変数。

スクリプトは、GUI (上記のように) と次の使用法ヘルプ テキストを提供します。
test.py|sh|pl --help
説明:
g.parser テスト スクリプト (python)
使用法:
test.sh [-f] raster=文字列 vector=文字列 [option1=文字列]
[--冗長] [--静か]
フラグ:
-f フラグ
--v 詳細なモジュール出力
--q 静かなモジュール出力
パラメーター:
ラスター ラスター入力マップ
vector ベクトル入力マップ
option1 オプション

例: コード Python
#!/ usr / bin / env パイソン
# Python プログラミング用の g.parser デモ スクリプト
#%モジュール
#% 説明: g.parser テスト スクリプト (python)
#% キーワード: キーワード1
#% キーワード: キーワード2
#%終わり
#%国旗
#% キー: f
#% 説明: フラグ
#%終わり
#%オプション G_OPT_R_MAP
#% キー: ラスター
#% 必須: はい
#%終わり
#%オプション G_OPT_V_MAP
#% キー: ベクトル
#%終わり
#%オプション
#% キー: オプション 1
#% タイプ: 文字列
#% 説明: オプション
#% 必要: いいえ
#%終わり
輸入OS
インポートシステム
glass.script を草としてインポートします
def main():
flag_f = フラグ['f']
option1 = オプション['option1']
ラスター = オプション['ラスター']
ベクトル = オプション['ベクトル']
#### ここにコードを追加 ####
flag_f の場合:
print "フラグ -f セット"
その他:
print "フラグ -f 未設定"
# パラメータが存在するかどうかをテスト:
オプション 1 の場合:
print "option1 オプションの値: '%s'" % option1
print "ラスターオプションの値: '%s'" % raster
print "ベクターオプションの値: '%s'" % vector
#### コードの終わり ####
0を返す
__name__ == "__main__"の場合:
オプション、フラグ = grass.parser()
sys.exit(メイン())

例: コード SHELL
#!/bin/sh
# シェル プログラミング用の g.parser デモ スクリプト
#%モジュール
#% 説明: g.parser テスト スクリプト (シェル)
#%終わり
#%国旗
#% キー: f
#% 説明: フラグ
#%終わり
#%オプション G_OPT_R_MAP
#% キー: ラスター
#% 必須: はい
#%終わり
#%オプション G_OPT_V_MAP
#% キー: ベクトル
#%終わり
#%オプション
#% キー: オプション 1
#% タイプ: 文字列
#% 説明: オプション
#% 必要: いいえ
#%終わり
if [ -z "$GISBASE" ] ; それから
echo "このプログラムを実行するには、GRASS GIS を使用している必要があります。" 1>&2
1番出口
fi
if [ "$1" != "@ARGS_PARSED@" ] ; それから
exec g.parser "$0" "$@"
fi
#### 以下にコードを追加してください ####
捨てた ""
[ $GIS_FLAG_F -eq 1 ] の場合; それから
g.message message="フラグ -f セット"
ほかに
g.message message="フラグ -f 未設定"
fi
# パラメータが存在するかどうかをテスト:
if [ -n "$GIS_OPT_OPTION1" ] ; それから
echo "GIS_OPT_OPTION1 の値: '$GIS_OPT_OPTION1'"
fi
g.message message="GIS_OPT_option1 の値: '$GIS_OPT_option1'"
g.message message="GIS_OPT_raster の値: '$GIS_OPT_raster'"
g.message message="GIS_OPT_vect の値: '$GIS_OPT_vector'"
#### コードの終わり ####

例: コード パール
#!/ usr / bin / perl -w
厳格な使用;
# g.parser デモ スクリプト
#%モジュール
#% 説明: g.parser テスト スクリプト (perl)
#% キーワード: キーワード1
#% キーワード: キーワード2
#%終わり
#%国旗
#% キー: f
#% 説明: フラグ
#%終わり
#%オプション G_OPT_R_MAP
#% キー: ラスター
#% 必須: はい
#%終わり
#%オプション G_OPT_V_MAP
#% キー: ベクトル
#%終わり
#%オプション
#% キー: オプション 1
#% タイプ: 文字列
#% 説明: オプション
#% 必要: いいえ
#%終わり
もし ( !$ENV{'GISBASE'} ) {
printf(STDERR "このプログラムを実行するには、GRASS GIS を使用している必要があります。\n");
1を終了します。
}
if( $ARGV[0] ne '@ARGS_PARSED@' ){
私の $arg = "";
for (my $i=0; $i < @ARGV;$i++) {
$arg .= " $ARGV[$i] ";
}
system("$ENV{GISBASE}/bin/g.parser $0 $arg");
出口;
}
#### ここにコードを追加 ####
"\n" を印刷します。
if ( $ENV{'GIS_FLAG_F'} eq "1" ){
print "フラグ -f セット\n"
}
他{
print "フラグ -f が設定されていません\n"
}
printf ("GIS_OPT_option1 の値: '%s'\n", $ENV{'GIS_OPT_OPTION1'});
printf ("GIS_OPT_raster の値: '%s'\n", $ENV{'GIS_OPT_RASTER'});
printf ("GIS_OPT_vect の値: '%s'\n", $ENV{'GIS_OPT_VECTOR'});
#### コードの終わり ####

onworks.net サービスを使用してオンラインで g.parsergrass を使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

Linuxコマンド

Ad




×
Advertisement
❤️ここでショッピング、予約、購入してください。料金はかかりません。これにより、サービスが無料で維持されます。