是否在 POSIX 中指定了 awk 的 nextfile?
**注意:**多年來,
nextfile
這是一個常見的擴展。2012 年 9 月,它被納入 POSIX 標準。請參閱奧斯汀集團網站。同樣,mawk 手冊說:
Nextfile 是一個 gawk 擴展(也由 BWK awk 實現),還不是 POSIX 標準的一部分(截至 2012 年 10 月),儘管它已被接受為標準的下一個修訂版。
讓我感到困惑的是,從 2018 年開始,最新的 POSIX 規範
nextfile
中沒有提及。通過指向 Austin Group 的連結,您會發現該問題已在 2012 年解決(甚至還有最終接受的文本),但僅在 2020 年應用(!)。
總而言之,這是否意味著
nextfile
POSIX 指定了 awk 的功能?還是只會在未來的 POSIX 版本中如此?(出於實用目的,
nextfile
也可以在BSD awk中找到。)
nextfile
另外兩個語句與:fflush
和delete
(delete
已指定,但將被擴展以便能夠刪除整個數組)處於相同的情況。
您會看到錯誤 607是針對問題 8 的,尚未發布(請參閱問題 8標籤 )。
第 7 期於 2008 年發布,第 7 期有幾個較新的版本,最新於 2018 年,但這些是技術更正,它們沒有帶來新功能。
nextfile
不僅是一項新功能,而且還破壞了向後兼容性,因為awk '{nextfile = 1}'
在目前 POSIX 版本awk '{nextfile}'
中有效呼叫分別設置和檢索變數的值,因此可能無法將其添加為技術勘誤的一部分。awk``nextfile
可以在 TC 中添加(並且可能應該添加)的內容是告訴人們這
nextfile
是一個保留以供將來使用的詞,因此人們不應該在他們的變數或函式名稱中使用它,作為一個腳本awk '{nextfile = 1}'
,雖然非常標準,但確實如此在許多awk
實現中不起作用(不限於nextfile
順便說一句)。您可以在https://pubs.opengroup.org/onlinepubs/9699919799.2018edition/utilities/awk.html
awk
上查看2018 版第 7 期 Single UNIX Specification 部分的HTML 再現(請注意該部分),但請注意即使它是由 Opengroup 發布的,HTML 版本也沒有標準價值,只有 PDF 有(您需要向他們註冊才能訪問它)。.2018edition
它們應該是等效的,儘管過去在轉換為 HTML 時有幾個錯誤導致部分失去(儘管它們通常在發現時會很快修復),所以當有疑問時,最好檢查一下PDF。