腐っても鯛? 騏も老いては駑馬に劣る?
三人の碩学が生み出したスクリプト言語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用バイナリ使ってるわ
レスを投稿する
ニュース
- 参政・神谷代表「なぜ日本では多くの中国人の方がキャッシュで不動産を買えるのか」「現金はどこから来ているのか」 片山大臣の回答は [少考さん★]
- 上野動物園の双子パンダ、1月末に中国に返還へ 国内でパンダ不在に ★3 [蚤の市★]
- 「全国テレビのデカ盛りの撮影が連絡無しで…」ラーメン店が悲痛の食材ロス危機を訴える [少考さん★]
- 【竹中平蔵 】 高市政権19兆円経済対策は「極めて昭和的」 私が提唱する“給付付き税額控除”は「ベーシックインカム」への入り口 [煮卵★]
- 【東京】わずか9平方メートル…都心に近い「極小」アパートが若者に人気 狭くても“住めば都” ★3 [煮卵★]
- 高市首相、輸入の太陽光パネルでなくペロブスカイト電池の普及を促進 [少考さん★]
- 【愛国者悲報】女性天皇賛成69%、反対派はわずか7%wwwwwwwwwwwwww [856698234]
- 今高市早苗の経営する病院にいるんだが事務がマイナ保険証のナニカや資格確認証の番号メモって「2度と出すな!」と言ってくる [517791167]
- 【悲報】赤坂の超高級プライベートサウナ(120分19,000円)で火事🔥男女カップル死亡 [923545898]
- 【高市悲報】上野のパンダさんの経済効果300億円 [931948549]
- 【世論】高市「中国と台湾の問題は、対話による平和的解決を期待するというのが、わが国の一貫した立場だ」 [811796219]
- 【朗報】イーロン・マスク「AIとロボットで働かなくて良くなる。全員ニートで金銭も税もないパラダイスみてぇな国を作りてえ」 [347751896]
