腐っても鯛? 騏も老いては駑馬に劣る?
三人の碩学が生み出したスクリプト言語AWKについて語るスレ
◆ 前スレ
awkについて語るスレ $2
https://mevius.5ch.net/test/read.cgi/tech/1172242542/
◆ 参考
The AWK Programming Language (Brian Kernighan):
ttp://cm.bell-labs.com/cm/cs/awkbook/index.html
GAWK (GNU Projedt):
ttp://www.gnu.org/software/gawk/
探検
awkについて語るスレ $3
2020/09/14(月) 12:37:48.22ID:ewkQANK9
2デフォルトの名無しさん
2020/09/14(月) 13:50:10.07ID:H3Bos02D O2
3デフォルトの名無しさん
2020/09/23(水) 14:22:14.30ID:0WMzoqh5 本を読んでたら%45.45sという書式が出てきてこれ間違いだろって思ったら
文字列の場合は小数部ではなく最大幅になるなんて知らなかった
$ awk 'BEGIN { printf("%.5s\n", "abc----------") }'
abc--
でも使いどころ難しそう
文字列の場合は小数部ではなく最大幅になるなんて知らなかった
$ awk 'BEGIN { printf("%.5s\n", "abc----------") }'
abc--
でも使いどころ難しそう
4デフォルトの名無しさん
2020/09/23(水) 14:46:12.52ID:YfY3TQQ4 $ awk 'BEGIN { printf("%5.5s\n", "abc-") }'
$ awk 'BEGIN { printf("%.5s\n", "abc-") }'
$ awk 'BEGIN { printf("%5s\n", "abc-") }'
$ awk 'BEGIN { printf("%.5s\n", "abc-") }'
$ awk 'BEGIN { printf("%5s\n", "abc-") }'
5デフォルトの名無しさん
2020/09/23(水) 14:47:16.95ID:YfY3TQQ4 $ awk 'BEGIN { printf("%-5.5s\n", "abc-") }'
$ awk 'BEGIN { printf("%-.5s\n", "abc-") }'
$ awk 'BEGIN { printf("%-5s\n", "abc-") }'
$ awk 'BEGIN { printf("%-.5s\n", "abc-") }'
$ awk 'BEGIN { printf("%-5s\n", "abc-") }'
2020/09/25(金) 21:33:57.37ID:vR6GHAXY
awk は語らず
2020/10/01(木) 21:33:10.71ID:Hlt30BS/
ド素人、予備知識なしがゼロから学ぶのに参考書おすすめ教えてください。
会社でawk使うことになりました。
会社でawk使うことになりました。
2020/10/02(金) 01:11:30.66ID:iPnIlJ3t
プログラミング言語AWKで勉強したけど
gawkの拡張機能はgoogle先生に聞いてる
gawkの拡張機能はgoogle先生に聞いてる
2020/10/02(金) 10:32:39.56ID:Y4P66lDx
>>7
オンラインマニュアルではなんでいけないの?
オンラインマニュアルではなんでいけないの?
2020/10/02(金) 12:51:45.18ID:vJ669CE7
参考書の種類もあまりawkないっしょ
11デフォルトの名無しさん
2020/10/02(金) 13:52:29.74ID:WC+nGixi 以前は awk 勉強したけど
perl とか python とかで済ませてるから
もうメンテ以外では使わないな
perl とか python とかで済ませてるから
もうメンテ以外では使わないな
12デフォルトの名無しさん
2020/10/04(日) 13:10:48.21ID:4IGvE5yV 簡単な処理ではワンライナーでたまに使う。
13デフォルトの名無しさん
2020/10/07(水) 16:59:03.05ID:G+m/WVyH 作者の本が一番面白い
わかりやすいかは知らないげど
わかりやすいかは知らないげど
14デフォルトの名無しさん
2020/10/22(木) 21:54:08.99ID:JmTLo/S3 フィールド操作をしてもなお行頭の空白を保持して " no-indent" と表示する、何か簡単な方法が無かったけ。
$ echo ' indent' | gawk '{$1 = "no-indent"; print}'
no-indent
$
$ echo ' indent' | gawk '{$1 = "no-indent"; print}'
no-indent
$
2020/11/01(日) 22:14:20.04ID:9AmpQCa+
perl5の純粋な正規表現が強いから
ちょっとでもタイプ数減らしてとか
なにか特別なこだわる理由が無いならperl5 でOK
ちょっとでもタイプ数減らしてとか
なにか特別なこだわる理由が無いならperl5 でOK
2021/02/18(木) 05:43:07.88ID:JtFS2IhM
簡単なパーサ書くには一番簡潔だと思う
2021/05/07(金) 21:18:53.69ID:r3UqDDaf
VSCodeでAwkを使いたいのですがDebugなし実行をしたら下部のターミナルに実行結果を出力したり出来ないでしょうか
Awk用のDebug拡張がないとエラーが出ます。そんな拡張存在しないのはわかってます。
Awk用のDebug拡張がないとエラーが出ます。そんな拡張存在しないのはわかってます。
2021/06/18(金) 13:53:16.18ID:rMpkljNE
解決策にならんけど。
awkならWSLでbash使う方がいいんじゃない?
awkならWSLでbash使う方がいいんじゃない?
2021/07/18(日) 03:10:26.05ID:a6CF+eHw
perlはなぁ
$がウザいんだよ$が
$がウザいんだよ$が
2021/07/18(日) 12:09:02.22ID:iK76XXqo
vscodeは分からんけど
インラインでawk実行して出力を拾うスクリプトでも書けばいいんじゃない、シンタックスはawkに設定したままで
awkじゃない部分のせいで変に認識されるかもしれんが、ホスト言語に無害なコメント文字を追加して無視させたり
インラインでawk実行して出力を拾うスクリプトでも書けばいいんじゃない、シンタックスはawkに設定したままで
awkじゃない部分のせいで変に認識されるかもしれんが、ホスト言語に無害なコメント文字を追加して無視させたり
2021/07/18(日) 12:12:17.44ID:iK76XXqo
pwshにC#やF#をヒアストリングで埋め込む時は、そうして補完やハイライトを効かせてる、vimだけど
22デフォルトの名無しさん
2021/07/19(月) 21:05:06.25ID:eMv5hFOn >>19
$1
$1
2021/07/29(木) 11:49:47.49ID:6K+laz5s
AWK、ビット演算ができるといいんだけどねぇ。GNUだといけるんだっけ?
まあそういう演算が必要になるような処理には
おとなしくC使っとけってことかな
まあそういう演算が必要になるような処理には
おとなしくC使っとけってことかな
2021/07/29(木) 11:52:38.70ID:TiMroEot
Bitwise Functions (The GNU Awk User’s Guide)
https://www.gnu.org/software/gawk/manual/html_node/Bitwise-Functions.html
https://www.gnu.org/software/gawk/manual/html_node/Bitwise-Functions.html
25デフォルトの名無しさん
2021/07/29(木) 12:29:34.27ID:f23qcyWP >>23
Perlもよろしく
Perlもよろしく
2021/07/29(木) 15:12:07.59ID:FOJ6srUx
2021/08/16(月) 20:05:36.86ID:UULqvt28
awkで困るのがスクリプト内のキー入力だな。
DOS時代はこんなcomファイルを作れば良かったが、
Linuxだとなかなか思うようにならない。
;----------------------------
; 1文字入力
; 押されたキーのコードを errorlevel に返す
;----------------------------
code segment
assume cs:code, ds:code
org 100h
start:
mov ah, 08h ; 1 文字入力 → al
int 21h
mov ah, 4Ch ; al → errorlevel
int 21h
code ends
end start
DOS時代はこんなcomファイルを作れば良かったが、
Linuxだとなかなか思うようにならない。
;----------------------------
; 1文字入力
; 押されたキーのコードを errorlevel に返す
;----------------------------
code segment
assume cs:code, ds:code
org 100h
start:
mov ah, 08h ; 1 文字入力 → al
int 21h
mov ah, 4Ch ; al → errorlevel
int 21h
code ends
end start
28デフォルトの名無しさん
2021/08/18(水) 18:20:40.65ID:vS4c4jwy2021/08/18(水) 18:48:35.35ID:3+Zj3nGD
Ubuntu?
30デフォルトの名無しさん
2021/08/18(水) 19:21:30.39ID:vS4c4jwy Ubuntu でなくても CentOS とかでも使える筈。余程ひねくれた Linux ディストリビューションでない限り大丈夫じゃないかな。
man termios でマニュアルページが出てくるようなら多分使える。
man termios でマニュアルページが出てくるようなら多分使える。
31デフォルトの名無しさん
2021/08/29(日) 16:10:31.61ID:9D+MRuLg 以前 awkで数値計算処理するプログラムを書いてたんだけど、高速化のために
gawk から nawk で処理することにしたんだ。小さい処理を書いて、nawk で実行
するとスゲー早くなるんだけど、自分の書いた処理を実行するとわけわからん
エラーを吐く。あちこちコメントアウトして原因を調べると、どうやら、
ループ回数の多い for ループのネストがNGらしいと分かった。nawkの制約を
ググって見たが制約がわからず、仮に自分で試して制約が分かったとしても
ループ処理の書き換えの手間とかを考えると割にあわないので、断念して gawk
のまま使った。かれこれ2年以上たつが、今でも悔しい。
gawk から nawk で処理することにしたんだ。小さい処理を書いて、nawk で実行
するとスゲー早くなるんだけど、自分の書いた処理を実行するとわけわからん
エラーを吐く。あちこちコメントアウトして原因を調べると、どうやら、
ループ回数の多い for ループのネストがNGらしいと分かった。nawkの制約を
ググって見たが制約がわからず、仮に自分で試して制約が分かったとしても
ループ処理の書き換えの手間とかを考えると割にあわないので、断念して gawk
のまま使った。かれこれ2年以上たつが、今でも悔しい。
32デフォルトの名無しさん
2021/08/29(日) 17:24:08.41ID:tafixoPz stack使いすぎなだけじゃね
2021/08/30(月) 00:45:59.57ID:Y1YJvMvh
34デフォルトの名無しさん
2021/10/26(火) 10:40:35.62ID:xOnuf5b9 vscodeでAWKを実行する方法
code Runnerを入れて、JSONを追加編集
{
"code-runner.executorMapByFileExtension": {
".awk" : "gawk -f $fullFileName",
},
}
(入力ファイルを使用する実行はできないが、
BEGIN内で完結するスクリプトならOK)
code Runnerを入れて、JSONを追加編集
{
"code-runner.executorMapByFileExtension": {
".awk" : "gawk -f $fullFileName",
},
}
(入力ファイルを使用する実行はできないが、
BEGIN内で完結するスクリプトならOK)
35デフォルトの名無しさん
2021/10/30(土) 23:19:24.33ID:TK9A35ME gawk 5.1.1 キタ
2022/04/09(土) 07:36:41.89ID:OA+lRtl7
キタ━━━━(゚∀゚)━━━━!!
2022/10/30(日) 23:13:43.05ID:T4RtgQ02
AWKは必須だわ
過去に書かれたログ管理のスクリプトが膨大過ぎる
過去に書かれたログ管理のスクリプトが膨大過ぎる
2023/07/03(月) 20:19:05.03ID:eAFNzqys
バイブルのSecond Edition
> The book will be available by the end of September.
だって。売れるの? 売れまくって訳本出るかな。無理だろうな。
> The book will be available by the end of September.
だって。売れるの? 売れまくって訳本出るかな。無理だろうな。
2023/07/06(木) 08:40:17.31ID:MmKgYZIp
いまだにgawk 3.1.5 mbcs対応版Windows用バイナリ使ってるわ
40デフォルトの名無しさん
2023/07/07(金) 22:53:33.02ID:oLdBfcPF ↓だからv3.1.5なのかな。
www.gnu.org/software/gawk/manual/html_node/Feature-History.html
Version 4.0 of gawk introduced the following features:
Support was removed for the following systems:
MS-Windows with the Microsoft Compiler
www.gnu.org/software/gawk/manual/html_node/Feature-History.html
Version 4.0 of gawk introduced the following features:
Support was removed for the following systems:
MS-Windows with the Microsoft Compiler
2023/07/08(土) 01:56:54.81ID:ZE4F8/ug
>>38
翻訳する会社があるかどうか
今も日本語訳のプログラミング言語AWKは売られているが
これは1989年版を再販しただけで、中身は変わっていないらしい
アルフレッド・エイホ、ブライアン・カーニハン、ペーター・ワインバーガ 著、足立高徳 訳『プログラミング言語AWK』トッパン、
1989年11月。ISBN 4-8101-8008-5。 - 「AWK book」(AWK 本)などと呼ばれ、C言語におけるK&Rのような扱いの本である。
日本版は版元の出版事業撤退により最初に絶版となる。
A・エイホ、B・カーニハン、P・ワインバーガー 著、足立高徳 訳『プログラミング言語AWK』シイエム・シイ出版部、2001年2月。ISBN 4901280406。 - トッパン 1989年刊の再刊。
A・エイホ、B・カーニハン、P・ワインバーガー 著、足立高徳 訳『プログラミング言語AWK』新紀元社、2004年2月。ISBN 4-7753-0249-3。 - 新紀元社から復刊されたものの、3度目の絶版となる。
A・エイホ、B・カーニハン、P・ワインバーガー 著、足立高徳 訳『プログラミング言語AWK』ユニバーサル・シェル・プログラミング研究所、2010年1月。ISBN 978-4-904807-00-2。 - ユニバーサル・シェル・プログラミング研究所
から3度目の復刊がなされた。
翻訳する会社があるかどうか
今も日本語訳のプログラミング言語AWKは売られているが
これは1989年版を再販しただけで、中身は変わっていないらしい
アルフレッド・エイホ、ブライアン・カーニハン、ペーター・ワインバーガ 著、足立高徳 訳『プログラミング言語AWK』トッパン、
1989年11月。ISBN 4-8101-8008-5。 - 「AWK book」(AWK 本)などと呼ばれ、C言語におけるK&Rのような扱いの本である。
日本版は版元の出版事業撤退により最初に絶版となる。
A・エイホ、B・カーニハン、P・ワインバーガー 著、足立高徳 訳『プログラミング言語AWK』シイエム・シイ出版部、2001年2月。ISBN 4901280406。 - トッパン 1989年刊の再刊。
A・エイホ、B・カーニハン、P・ワインバーガー 著、足立高徳 訳『プログラミング言語AWK』新紀元社、2004年2月。ISBN 4-7753-0249-3。 - 新紀元社から復刊されたものの、3度目の絶版となる。
A・エイホ、B・カーニハン、P・ワインバーガー 著、足立高徳 訳『プログラミング言語AWK』ユニバーサル・シェル・プログラミング研究所、2010年1月。ISBN 978-4-904807-00-2。 - ユニバーサル・シェル・プログラミング研究所
から3度目の復刊がなされた。
2023/07/08(土) 01:58:24.90ID:ZE4F8/ug
というか復刊がされるってことは
それだけ廃刊になってるということなわけで
売れるのか?
それだけ廃刊になってるということなわけで
売れるのか?
2023/07/08(土) 05:04:22.58ID:Z95/l0J7
awk は、CSV すら無理でしょ
テキスト処理やファイル操作などは、Ruby で良い
テキスト処理やファイル操作などは、Ruby で良い
44デフォルトの名無しさん
2023/07/08(土) 05:44:08.88ID:vFYcQbUX 大∞!!!!
病∞!!!!!
状∞!!!!!!
癌∞!!!!!!!
移∞!!!!!!!!
薬∞!!!!!!!!!
療∞!!!!!!!!!!
科∞!!!!!!!!!!!
篤∞!!!!!!!!!!!!
帯∞!!!!!!!!!!!!!
付∞!!!!!!!!!!!!!!
殿∞!!!!!!!!!!!!!!!
滴∞!!!!!!!!!!!!!!!!
明∞!!!!!!!!!!!!!!!!!
傷∞!!!!!!!!!!!!!!!!!!
用∞!!!!!!!!!!!!!!!!!!!
錠∞!!!!!!!!!!!!!!!!!!!!
害∞!!!!!!!!!!!!!!!!!!!!!
痛∞!!!!!!!!!!!!!!!!!!!!!!
院∞!!!!!!!!!!!!!!!!!!!!!!!
師∞!!!!!!!!!!!!!!!!!!!!!!!!
期∞!!!!!!!!!!!!!!!!!!!!!!!!!
リ∞!!!!!!!!!!!!!!!!!!!!!!!!!!
症∞!!!!!!!!!!!!!!!!!!!!!!!!!!!
助∞!!!!!!!!!!!!!!!!!!!!!!!!!!!!
援∞!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
雇∞!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
款∞!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
告∞!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
僚∞!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
病∞!!!!!
状∞!!!!!!
癌∞!!!!!!!
移∞!!!!!!!!
薬∞!!!!!!!!!
療∞!!!!!!!!!!
科∞!!!!!!!!!!!
篤∞!!!!!!!!!!!!
帯∞!!!!!!!!!!!!!
付∞!!!!!!!!!!!!!!
殿∞!!!!!!!!!!!!!!!
滴∞!!!!!!!!!!!!!!!!
明∞!!!!!!!!!!!!!!!!!
傷∞!!!!!!!!!!!!!!!!!!
用∞!!!!!!!!!!!!!!!!!!!
錠∞!!!!!!!!!!!!!!!!!!!!
害∞!!!!!!!!!!!!!!!!!!!!!
痛∞!!!!!!!!!!!!!!!!!!!!!!
院∞!!!!!!!!!!!!!!!!!!!!!!!
師∞!!!!!!!!!!!!!!!!!!!!!!!!
期∞!!!!!!!!!!!!!!!!!!!!!!!!!
リ∞!!!!!!!!!!!!!!!!!!!!!!!!!!
症∞!!!!!!!!!!!!!!!!!!!!!!!!!!!
助∞!!!!!!!!!!!!!!!!!!!!!!!!!!!!
援∞!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
雇∞!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
款∞!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
告∞!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
僚∞!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
45デフォルトの名無しさん
2023/07/08(土) 06:12:40.74ID:V8Gq2Zo8 >>43
> awk は、CSV すら無理でしょ
なので、こんな機能が一昔前に追加された。完璧に対応できるか知らんけど。
www.gnu.org/software/gawk/manual/html_node/Feature-History.html
Version 4.0 of gawk introduced the following features:
Variable additions:
FPAT, which allows you to specify a regexp that matches the fields, instead of matching the field separator (see Defining Fields by Content).
> awk は、CSV すら無理でしょ
なので、こんな機能が一昔前に追加された。完璧に対応できるか知らんけど。
www.gnu.org/software/gawk/manual/html_node/Feature-History.html
Version 4.0 of gawk introduced the following features:
Variable additions:
FPAT, which allows you to specify a regexp that matches the fields, instead of matching the field separator (see Defining Fields by Content).
2023/07/08(土) 08:27:09.25ID:ZE4F8/ug
>>42
goawkを使え。CSVとTSVに完璧に対応してるぞ。
A POSIX-compliant AWK interpreter written in Go, with CSV support
https://github.com/benhoyt/goawk
$ goawk -i csv '{ print $1 }' quoted.csv
goawkを使え。CSVとTSVに完璧に対応してるぞ。
A POSIX-compliant AWK interpreter written in Go, with CSV support
https://github.com/benhoyt/goawk
$ goawk -i csv '{ print $1 }' quoted.csv
2023/07/08(土) 08:27:34.78ID:ZE4F8/ug
自分にレスしてしまった
>>43
goawkを使え。CSVとTSVに完璧に対応してるぞ。
A POSIX-compliant AWK interpreter written in Go, with CSV support
https://github.com/benhoyt/goawk
$ goawk -i csv '{ print $1 }' quoted.csv
>>43
goawkを使え。CSVとTSVに完璧に対応してるぞ。
A POSIX-compliant AWK interpreter written in Go, with CSV support
https://github.com/benhoyt/goawk
$ goawk -i csv '{ print $1 }' quoted.csv
2023/07/13(木) 00:42:11.27ID:67L5jZpB
レスを投稿する
ニュース
- 中国大使館、ついにXで尖閣諸島が領土と主張「何を言おうと釣魚島が中国に属する」に反発続々 [パンナ・コッタ★]
- 高市首相告白「『なめられない服』を選ぶことに数時間を費やしました」「外交交渉でマウント取れる服、買わなくてはいかんかもなぁ」★2 [ぐれ★]
- 首相官邸前で「戦争あおるな」 台湾有事巡る答弁に抗議 ★2 [蚤の市★]
- 【野球】「地上波で放送しないWBC」は2軍選手中心で十分! 今こそネットフリックスに『ノー』を突き付けてほしい 江本氏が提言 [冬月記者★]
- 『DOWNTOWN+』会員数50万人突破で見えてきた 松本人志の“月収4ケタ万円”驚愕収入 [阿弥陀ヶ峰★]
- 国民・榛葉氏「中国焦ってる」 ★2 [ぐれ★]
- 福島競馬3回5日目
- こいせん 全レス転載禁止
- 巨専】
- とらせん IP
- 【J SPORTS】FIFA U-17ワールドカップ ★12
- 【DAZN】フォーミュラGP【F1 2 3 SF P】Lap1806
- 【高市悲報】スーパーさん、物価が上がって惣菜とかの値段がセブンイレブンとかコンビニと変わらなくなるwwwwwwwwwwww [257926174]
- 【実況】博衣こよりのえちえちゼルダの伝説 ムジュラの仮面🧪
- 高市早苗、車のナンバーに37-77を愛用しているのが中国人に見つかる。盧溝橋事件の1937年7月7日を記念してか [624898991]
- 【悲報】高市政権関係者「閣僚には円安が何かよくわかってない人がいる」「総理もデメリットを理解してない」🤤 [359965264]
- 日本を安売りし続ける自民党。保守とはなんだろう。売国奴のことだろうか [667744927]
- 【悲報】イタリア、終わる… 世界屈指の少子高齢化社会に経済停滞、深刻な地方過疎化、国民にもあきらめムード蔓延… [452836546]
