GoGPT Best VPN GoSearch

OnWorksファビコン

pmcpp - クラウドでオンライン

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

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

プログラム:

NAME


pmcpp - Performance Co-Pilot 用の単純なプリプロセッサ

SYNOPSIS


pmcpp [-Prs] [-D [=] ...] [-I DIR ...] [ファイル内]

DESCRIPTION


pmcpp もともと操作用に設計された非常に単純なプリプロセッサを提供します
Performance Co-Pilot (PCP) 用の Performance Metric Name Space (PMNS) ファイル。
条件付きブロックを提供するために一般化され、ファイル処理、インラインシェルコマンドが含まれます
任意のファイルの実行とマクロ置換。 これは、最も一般的に内部的に使用されます
後にPMNSファイルを処理する pmLoadNameSpace(3)または pmLoadASCIINameSpace(3) と呼ばれます
の構成ファイルを前処理します。 午後ロガーとします。

入力行が読み取られます ファイル内 (または標準入力の場合は ファイル内 は指定されていません)、処理されます
そして標準出力に書き込まれます。

/* ... */ の形式のすべての C スタイルのコメントは、入力ストリームから取り除かれます。

定義済みのマクロはありません pmcpp ただし、マクロはコマンドで定義できます
を使用した行 -D オプション、ここで   説明と同じ規則に従う必要があります
以下の #定義する 指令。

pmcpp 入力ストリームで次のディレクティブを受け入れます ( cpp(1)):

· #include "ファイル名"
or
#include <ファイル名>
いずれの場合も、ディレクトリ検索パス ファイル名 トライ ファイル名 まず、次に
コマンドラインのディレクトリ ファイル内 (存在する場合)、その後に名前が付けられたディレクトリが続きます -I
コマンドライン引数、そして最後に $PCP_VAR_DIR/pmns ディレクトリ(後者は
の以前のバージョンとの下位互換性 pmcpp および暗黙の使用元
pmLoadASCIINameSpace(3))。 #include ディレクティブは最大深さまで入れ子にすることができます
5.

· #シェル " command"
or
#シェル ' command'
当学校区の shell command が実行され、標準出力がストリームに挿入されます
によって処理されるデータの pmcpp. 機能的には、これは #include
ただし、入力行はディレクティブから読み取られます。 command ファイルではなく。 の #シェル
ディレクティブは、包含または除外に最も役立ちます #定義する or #undef ディレクティブベース
の実行時ロジックで command.

· #定義する
or
#定義する ""
or
#定義する ''
マクロの値を定義します これは有効な C スタイルの名前でなければなりません。
英字またはアンダースコアの後に XNUMX 個以上の英数字またはアンダースコアが続きます。
オプションです (デフォルトは空の文字列です)。 文字エスケープ機構はありません。
ただし、一重引用符または二重引用符のいずれかを使用して、 特別な
文字または埋め込まれた水平方向の空白 (改行なし)。

· #undef
のマクロ定義があれば、それを削除します。 .

· #ifdef
...
#endif
or
#ifndef
...
#endif
マクロが is
定義されているかどうか。

· #その他
以内 #ifdef or #ifndef ブロック、 #その他 含める行を区切るために使用できます。
前の「if」条件は偽です。

マクロ置換は、入力ストリームを白で区切られた単語に分割することによって実現されます
マクロ名に使用できないスペースまたは文字、つまり英数字および
下線。 各単語がチェックされ、マクロ名と一致する場合、その単語は次のように置き換えられます
それ以外の場合、単語は変更されません。

一般に、入力行ごとに XNUMX つの出力行があります。
コメントまたは条件付きディレクティブの処理により、テキストが削除されました。
入力ストリームに変更があると、追加の出力行が生成されます。
形:

# lineno "ファイル名"

を示すために フォロー中 行番号に対応する出力行 リネノ 入力の
file ファイル名.

当学校区の -P 引数は、これらのラインマーカー ラインの生成を抑制します。

当学校区の -s 引数は、予想される入力スタイルを C ライクからシェルライクに変更します (# は
コメント接頭辞)。 これにより、次の変更が強制されます pmcpp 行動:
· 制御接頭文字が # 〜へ %ので、 %含む 例えば。
・コメントの剥ぎ取りは行いません。

マクロ展開をより細かく制御するには、 -r オプションは、マクロ置換を次のように制限します
パターンに合う言葉 #名前または #{} または -s が指定されている場合 %名前または
%{}. このモードでは、マクロ 入力ストリームで単独では展開されません。
ただし、制御行(のように #ifdef) マクロ なしで単独で表示する必要があります
プレフィックス文字または中括弧 (以下の例を参照)。

重要 cpp(1) 特徴 による支援 pmcpp 次のとおりです。
· パラメータ付きマクロ - pmcpp マクロはパラメーターなしの文字列のみをサポートします
代用。
· #もし
...
#endif
· ネストされた使用 #ifdef or #ifndef.
// コメントのように、C++ スタイルのコメントを削除します。
· エラー回復 - 最初に遭遇したエラー pmcpp 致命的になります。
· cpp(1) 次のようなコマンド ライン オプション -o, -W, -U, -x.


┌──────────────────────────────────────────────┐
│コマンド: pmcpp
├────────────────────────┬──────────────────────┤
入力出力
├────────────────────────┼──────────────────────┤
│ │ #1」 │
│#define マイドメイン 27 │ │
│││
│ルート { │ ルート { │
│ foo MYDOMAIN:0:0 │ foo 27:0:0 │
│} │ } │
└────────────────────────┴──────────────────────┘
次の例では、ファイル 周波数 次の行が含まれます。
%define dk_freq 1分
%define cpu_freq '15 秒'

┌────────────────────────────────────────────────── ──────────────────────┐
│コマンド: pmcpp -rs
├──────────────────────────────────┬────────────── ──────────────────────┤
入力出力
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ───────────┤
│# ロギング頻度を取得 │ # ロギング頻度を取得 │
│# eg dk_freq マクロ │ # eg dk_freq マクロ │
│%include "frequency" │ │
│││
│ログ必須 %dk_freq { │ ログ必須 1 分 { │
│ ディスク.dev │ ディスク.dev │
│} │ } │
│││
│# want_cpu の % はここに注記 │ # want_cpu の % はここに注記 │
│%ifdef 欲しい_cpu │ │
│%define cpu_pfx 'kernel.all.cpu.' │ │
│%cpu_freq で必須のログ { │ │
│ %{cpu_pfx} ユーザー │ │
│ %{cpu_pfx}sys │ │
│} │ │
│%endif │ │
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ───────────┘
┌────────────────────────────────────────────────── ──────────────────────┐
│コマンド: pmcpp -rs -ドワント_cpu
├──────────────────────────────────┬────────────── ──────────────────────┤
入力出力
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ───────────┤
│# ロギング頻度を取得 │ # ロギング頻度を取得 │
│# eg dk_freq マクロ │ # eg dk_freq マクロ │
│%include "frequency" │ │
│││
│ログ必須 %dk_freq { │ ログ必須 1 分 { │
│ ディスク.dev │ ディスク.dev │
│} │ } │
│││
│# want_cpu の % はここに注記 │ # want_cpu の % はここに注記 │
│%ifdef 欲しい_cpu │ │
│%define cpu_pfx 'kernel.all.cpu.' │ │
│ログは %cpu_freq で必須 { │ ログは 15 秒で必須 { │
│ %{cpu_pfx} ユーザー │ kernel.all.cpu.user │
│ %{cpu_pfx}sys │ kernel.all.cpu.sys │
│} │ } │
│%endif │ │
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ───────────┘

CFP ENVIRONMENT


接頭辞が付いた環境変数 PCP_ ファイルとディレクトリをパラメータ化するために使用されます
PCPで使用される名前。 インストールごとに、ファイル /etc/pcp.conf ローカル値が含まれています
これらの変数について。 NS $ PCP_CONF 変数を使用して代替を指定できます
で説明されている構成ファイル pcp.confとします。

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


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

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

Linuxコマンド

Ad




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