GNU awkマニュアルnextfile
読み取り:
注:長年にわたり、
nextfile
は一般的な拡張子でした。 2012年9月、POSIX標準への組み込みが承認されました。 Austin GroupのWebサイト を参照してください。
同様に、 mawkマニュアル は次のように述べています。
Nextfileはgawk拡張(BWK awkでも実装されています)であり、POSIX標準(2012年10月現在)にはまだ含まれていませんが、標準の次の改訂版では受け入れられています。
私を混乱させるのは、2018年から 最新のPOSIX仕様 にnextfile
の言及がないことです。
オースティングループへのリンクをたどると、問題は2012年に(最終的に承認されたテキストも含めて)解決されましたが、2020年にのみ適用されました(!)。
全体として、それはnextfile
がPOSIXによって指定されたawkの機能であることを意味しますか?それとも、将来のPOSIXバージョンでのみそうなりますか?
(実際には、nextfile
も BSD awk にあります。)
さらに2つのステートメントがnextfile
と同じ状況にあります: fflush
および delete
(delete
はすでに指定されていますが、配列全体を削除できるように拡張されます)。
バグ607 がまだリリースされていない第8号を対象としていることがわかります(issue8を参照してください)タグ)。
第7号は2008年にリリースされました。最新版の第7号には2018年の最新版がいくつかありますが、これらは技術的な正誤表であり、新機能はありません。
nextfile
は新機能であるだけでなく、awk '{nextfile = 1}'
とawk '{nextfile}'
が有効なawk
呼び出しであるので、下位互換性がなくなり、現在のPOSIXバージョンでは、それぞれnextfile
変数なので、技術修正の一部として追加できない可能性があります。
TCに追加できる(そしておそらく持つべき)ものは、nextfile
は将来の使用のために予約されているWordであることを人々に伝えることです。そのため、このスクリプトを変数や関数名で使用しないでください。 awk '{nextfile = 1}'
は完全に標準ですが、多くのawk
実装では機能しません(nextfile
btwに限定されません)。
https://pubs.opengroup.org/onlinepubs/9699919799.2018edition/utilities/awkで、Single UNIX SpecificationのIssue 7の2018年版のawk
部分のHTMLレンディションを確認できます。 .html (.2018edition
の部分に注意してください)、ただし、Opengroupによって公開されている場合でも、HTMLバージョンには標準の値がなく、PDF (それにアクセスするには、それらに登録する必要があります)。
それらは同等であるmeantですが、過去にHTMLへの変換にいくつかのバグがあり、セクションが欠落していました(ただし、発見されたらすぐに修正されるのが一般的です)。
POSIXの標準化は、2つの異なる取り組みと見なすことができます。
インターフェースに影響を及ぼさないバグ修正。これは、いわゆる技術的修正としてリリースされています。現在の第7号標準は基本的に2008年のもので、2018年のリリースはTC2です。
インターフェイスに影響を与える新機能。これには、標準の新しいメジャーバージョンが必要です。
名前付きの理由でIssue 8
とマークされている場合、awkの問題が発生しています。現在、2021年に準備ができると予想される第8号の標準の完成に取り組んでいます。