腐っても鯛? 騏も老いては駑馬に劣る?
三人の碩学が生み出したスクリプト言語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
2023/09/28(木) 23:45:42.65ID:sTPdbM4+
レスを投稿する
ニュース
- タワマンに戻りたい…子どものため郊外の庭付き一軒家に引っ越した世帯年収1,600万円の40代パワーカップル「心底後悔しています」 ★4 [樽悶★]
- 【サッカー】カズ、J3福島入り確実に!期限付き移籍で5年ぶりJ復帰 “還暦Jリーガー”誕生へ [征夷大将軍★]
- マイナ保険証「メリットなし」が最多 1.1万人調査で見えた“不安と様子見” ★2 [♪♪♪★]
- イランの豚肉愛好家「禁制品ほど食べたい」 厳格イスラム体制、摘発リスク覚悟で密輸 [少考さん★]
- カズレーザー「サンタクロースはいない」「買ってくれた親に感謝」発言に“視聴者から苦情”で「バカじゃねーの?って本当に思う」★2 [muffin★]
- 「女子は数学が苦手」「トップ層は男子」という“常識”に根拠なし? 国際的学力調査が示す事実 [♪♪♪★]
- 【悲報】女さん「お笑い芸人好き!吉本大好き!」弱者男性「お笑い芸人嫌い!吉本嫌い!」弱者男性がお笑い嫌いなのは何故なのか? [786648259]
- 識者「最近のサイゼリヤはクオリティーが落ちてきている。品質を劣化させるのではなく値上げを」 [663766621]
- 【米帝しぐさ】米国は、「持てる者」たちが支え、彼らのために国が動いている。その他大勢は、一段格下の人間として生きる。格差社会の国 [979264442]
- 【悲報】コンタクトデビュー僕、今朝もコンタクトを10個消費してようやく両目にはまる
- 【悲報】原爆被団協「政府高官の核保有発言に反対します」 ネトウヨ「K-POPにも抗議しろよおおお!!!!💢」⇦10万いいね [455031798]
- ポッカキット、「JCがJCをリンチの後に男友達にレイプさせる動画」というガチの児ポ動画をアップしてしまい終わる [632966346]
