問題タブ [gawk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
error-handling - awk は存在しないファイルをレースなしでスキップできますか?
awk (gawk) に見つからないファイルを無視またはスキップさせる方法はありますか? つまり、ファイル システムに存在しなくなった、コマンド ラインで渡されたファイルです (たとえば、/proc/[1-9]* の下で急速に出現/消失するファイル)。
デフォルトでは、見つからないファイルは致命的なエラーです:-(
次のようなことと同等のことができるようにしたいと思います。
ラッパー スクリプトは、awk が実行される前にファイルが存在することを確認できません。これは、ファイルがチェックされてから awk がファイルを開こうとするまでの間にファイルが消える可能性があるためです。つまり、競合状態です。(タイミングはタイトですが、awk内でチェックしてから開くことも競合状態です)
bash - AWK: スクリプト出力をスクリプトから動的な名前の別のファイルにリダイレクトする
次のように、スクリプト内から awk の印刷出力を別のファイルにリダイレクトできることはわかっています。
(ダミーの例であることはわかっていますが、単なる例です...)
しかし、必要なのは、このような動的な名前を持つ別のファイルに出力をリダイレクトすることです
出力は にリダイレクトされsomedinamicdata-SomeStaticText
ます。
私は次の方法でそれを行うことができることを知っています:
しかし、問題は、それがより大きなawkスクリプトであり、特定の条件に応じていくつかのファイルに出力する必要があることです(このawkスクリプトは別のbashから呼び出され、-vスイッチを介して動的変数を渡します...そして息子の上。
とにかくそれは可能ですか?
前もって感謝します。
linux - sed または awk で、複数の行にまたがる可能性があるレコード セパレータをどのように処理すればよいですか?
私のログファイルは次のとおりです。
cat が最初の行にある完全な複数行エントリを解析したいと思います。sed
and/orでこれを行う最善の方法は何awk
ですか?
つまり、解析で次のように生成する必要があります。
bash - gawk を使用した CSV ファイルの解析
gawk を使用して CSV ファイルを解析するにはどうすればよいですか? FS=","
カンマを含む引用符で囲まれたフィールドは複数のフィールドとして扱われるため、単純に設定するだけでは不十分です。
FS=","
動作しない使用例:
ファイルの内容:
gawk スクリプト:
悪い出力:
望ましい出力:
awk - 正規表現を使用したレコード全体の awk マッチング
Awk を使用して、正規表現を使用してレコード全体を照合したいと考えています。デフォルトでは、正規表現マッチングはレコードの一部に対して行われます。
理想的なソリューションは次のとおりです。
- 使用するフィールド セパレータに関係なく、すべてのフィールドに対して一般的であること。
- 入力全体を 1 つのフィールドとして扱わず、文字列関数を使用して手動で解析します。
- 一般的な方法で作業し、たとえば gawk に固有のものではありません。
ただし、外部プログラムを呼び出さずに Awkを使用する限り、すべてのソリューションに関心があります。
例、私は持っています:
私は得る:
これは私が求めている結果です:
ubuntu - AWK - 私の正規表現は大文字と小文字を区別しません
私はUbuntu 8.04を実行していますが、コードは次のようになります...
--posix スイッチがないと、{n} 式が gawk で機能しないことがすぐにわかりました。有効にすると式は機能しますが、大文字と小文字を区別せずに AAAA と aaaa に一致します。ここで何が起こっているのですか?
reference - AWK のベスト リファレンス / クリブ シート
一連の同様の質問で、これまでに見た中で最高の AWK リファレンスは何ですか?
実際に存在しない場合 (私はまだ聖杯を見つけていません)、別の質問でまとめることもできます。
parsing - ログファイルに対して計算を実行する方法
私は次のようなものを持っています:
括弧内の 2 番目と 3 番目のフィールドの平均を計算するシェル スクリプトを作成したいと思います (840
および0
最後の例)。さらに難しい質問: 最後のフィールドが でない場合にのみ、3 番目のフィールドの平均を取得することは可能0
ですか?
または別の言語を使用してスクリプトを作成できることはわかっていRuby
ますが、.NET で作成したいと考えていBash
ます。このようなスクリプトを作成する方法に関するリソースやヒントに関する良い提案があれば役立ちます。
formatting - GAWKで千個の分離したフロートを印刷する
gawkで巨大なファイルを処理する必要があります。私の主な問題は、千のセパレーターを使用していくつかのフロートを印刷する必要があることです。例:出力のように10000
表示され10.000
ます。10000,01
10.000,01
私(そしてグーグル)はこの関数を思いついたが、これはフロートでは失敗する:
しかし、それはフロートで失敗します。
今、私は入力を整数と<1の部分に分割し、整数をフォーマットした後、それらを再度接着することを考えていますが、それを行うためのより良い方法はありませんか?
免責事項:
- 私はプログラマーではありません
- 私はいくつかのシェル環境を介してそれを知っています。変数千の区切り文字を設定できますが、言語やロケールの設定が異なるさまざまな環境で機能する必要があります。
- 英語は私の第二言語です、間違って使用している場合は申し訳ありません
awk - Windows で自己完結型の Awk/Gawk プログラムを作成する方法を知っている人
私はawkスクリプトを使用して、将来繰り返すのに役立つ可能性のあるかなり重い解析を行っていますが、UNIXに不慣れな同僚が解析を行うためにawk/gawkをインストールするかどうかはわかりません. スクリプトから自己完結型の実行可能ファイルを作成する方法はありますか?