awkについて語るスレ $3at TECH
awkについて語るスレ $3 - 暇つぶし2ch85:デフォルトの名無しさん
24/06/18 14:38:57.57 7l1MdKKx.net
bashのスクリプトからawk、sedならわかるんだが、awk単独でどうとか
アマゾンのレビューで吉田というやつのみが5つ星で、この吉田のプロフィールがヒラヤマというXに繋がっている可能性がある
あまりに読んでなさすぎだと思ったら、読んでないんだな
オライリーの「sed & awkプログラミング 改訂版」には触れない、他の出版会社の書籍には触れないなど二人とも違和感がある

86:デフォルトの名無しさん
24/06/18 14:44:06.94 J2T1cvE/.net
>>68
Rは死んだんだっけ

87:デフォルトの名無しさん
24/06/18 14:46:35.23 J2T1cvE/.net
>>75
確かに perl 使い始める前は awk 使ってたの思い出した

88:デフォルトの名無しさん
24/06/18 14:56:45.90 J2T1cvE/.net
>>85
尼のレビューで awk の吉田観に行ったら
ヤバマン - サレ妻の秘密の離婚準備 ってのがおすすめされるんだがなんでなん

89:デフォルトの名無しさん
24/06/18 16:54:28.15 Yg9xtfWz.net
検索エンジンでなくAIに聞く練習をしてみた


自分

"awk gentab.awk -h" とやればヘッダが生成され、"awk gentab.awk -s" とすればソースが生成されるようにするにはどうすればいいんでしたっけ。


Copilot

AWKで特定のオプションに応じて異なる出力を生成するには、コマンドライン引数を処理するロジックをスクリプトに組み込む必要があります。-h オプションでヘッダを、-s オプションでソースを生成するようにするためには、以下のようなAWKスクリプトを書くことができます。

URLリンク(ideone.com)

このスクリプトは、コマンドライン引数をチェックして、-h が指定された場合はヘッダファイルの内容を、-s が指定された場合はソースファイルの内容を出力します。exit ステートメントは、それぞれのセクションの出力後にスクリプトの実行を終了させるために使用されます。

スクリプトを gentab.awk として保存した後、以下のコマンドを実行することで、それぞれのファイルを生成できます。

awk -f gentab.awk -h # ヘッダファイル生成
awk -f gentab.awk -s # ソースファイル生成

AWKスクリプトの詳細な使い方やオプションについては、オンラインのマニュアルやドキュメントを参照すると良いでしょう。もし他にも質問があれば、お気軽にどうぞ。

90:デフォルトの名無しさん
24/06/18 17:12:04.60 Yg9xtfWz.net
ええっと、これを貼らなきゃ見えないのかな

URLリンク(ideone.com)

91:デフォルトの名無しさん
24/06/18 18:24:04.44 7l1MdKKx.net


92:デフォルトの名無しさん
24/06/18 19:12:23.97 Yg9xtfWz.net
こういう、固定小数点の三角関数が欲しい時にawkに生成させる話さ

short sin_table[] = {
0, 6392, 12539, 18204, 23169, 27244, 30272, 32137,
32767, 32137, 30272, 27244, 23169, 18204, 12539, 6392,
0, -6392, -12539, -18204, -23169, -27244, -30272, -32137,
-32767, -32137, -30272, -27244, -23169, -18204, -12539, -6392,
};
short cos_table[] = {
32767, 32137, 30272, 27244, 23169, 18204, 12539, 6392,
0, -6392, -12539, -18204, -23169, -27244, -30272, -32137,
-32767, -32137, -30272, -27244, -23169, -18204, -12539, -6392,
0, 6392, 12539, 18204, 23169, 27244, 30272, 32137,
};

93:デフォルトの名無しさん
24/06/18 19:17:40.22 7l1MdKKx.net
何を勘違いしているの

94:デフォルトの名無しさん
24/06/18 19:19:23.73 7l1MdKKx.net
生成AIは的確な仕様を伝えてないといけない

95:デフォルトの名無しさん
24/06/18 19:32:36.51 Yg9xtfWz.net
>>76で伝えてるじゃん

96:デフォルトの名無しさん
24/06/18 19:40:43.38 7l1MdKKx.net
>>95
それが合っているのかどう確認したのですか?
生成AIは正解を教えるわけではありません。

97:デフォルトの名無しさん
24/06/18 19:48:33.05 Yg9xtfWz.net
>>96
>>92を見ればちゃんとだいたい三角関数になってるじゃん
簡単のため256等分を32等分にしようって提案しただけ

98:デフォルトの名無しさん
24/06/18 21:32:43.98 Yg5iVeQt.net
マジレスすると 0度~45度 の余弦だけあれば十分です

99:デフォルトの名無しさん
24/06/18 21:38:40.47 Yg9xtfWz.net
>>98
それをループ展開するのさ

100:デフォルトの名無しさん
24/06/19 09:13:33.08 Ml7xOhwE.net
>>77
ごめんその目的ならそれで良いけど
本来三角関数テーブルを造るのに[sin|cos|tan|asin|acos|atan|atan2]関数を使ったら負けだと思う

101:デフォルトの名無しさん
24/06/19 10:07:13.56 0R72bU2b.net
作ったもの、生成させたものが想定どおりか確認する、テストするという概念がないのは、プログラマ以前の話だぜ?

102:デフォルトの名無しさん
24/06/19 15:24:43.01 Lm+h2XXV.net
ユニットテストなあ
sinとcosだけだったらテストしてもいいかもしれない
でもtanはどうする?
tanはsinやcosみたいに有限の範囲に収まっていない
つまりそのままではテーブルを持ちにくい
実際にはtanは個別のプログラムで必要とされる計算式において、
「有限の範囲に収まる、tanを含む部分式」というのがたいていあるはずだから、それのテーブルを持つ
それは単体でテストしても意味のないものだ

103:デフォルトの名無しさん
24/06/19 19:35:36.17 IaB5ZLIm.net
>>102
それは仕様として決めること
四則演算のみの電卓だってどういう順番で計算するかは決まっていない
数学の誤差が小さくなる計算が正しいわけではない

104:デフォルトの名無しさん
24/06/19 23:53:27.29 Lm+h2XXV.net
URLリンク(ideone.com)

105:デフォルトの名無しさん
24/06/21 17:44:44.00 LwqdtCE6.net
>>104
なぜ自作の計算しているのかという部分があるそ?

106:デフォルトの名無しさん
24/06/21 17:45:23.65 LwqdtCE6.net
awkでやる意味がないよ

107:デフォルトの名無しさん
24/06/21 18:34:17.72 r40UsctT.net
古い人なんじゃない?
昔はこういうテーブルよく作ってたよ
深層学習で使われるシグモイド関数のテーブルとか
浮動小数点数のレジスタが遅かったり
貧弱な計算資源の計算機だとかなり有用

108:デフォルトの名無しさん
24/06/21 18:38:13.51 wIxdZD1d.net
>>105
安いハードウェアでも速いから

109:デフォルトの名無しさん
24/06/21 23:08:53.44 LwqdtCE6.net
OSの標示コマンドを自作してしまう人間はまだいるからなあ。

110:デフォルトの名無しさん
24/06/24 00:16:12.40 sso3G8sO.net
アマゾンの
「プログラミング言語AWK 第2版」
コメントなしの5つ星レビューが追加された
転○目的の中古が値崩れし始めている
めがベンチャーくんの宣伝じゃ売れないよ!

111:デフォルトの名無しさん
24/06/24 08:32:33.18 snwWNZSk.net
>>110
これか。
URLリンク(www.%61mazon.co.jp)
評価した人数が僅か2人なので、宣伝だとしても効果は薄そう。

112:デフォルトの名無しさん
24/06/24 14:01:48.24 OzsKCRyN.net
URLリンク(x.com)
URLリンク(x.com)
こういう人もいるんだな。都知事選の政見放送みたい

113:デフォルトの名無しさん
24/06/24 15:08:37.60 kN0svtrZ.net
awkでやる意味がないよ

114:デフォルトの名無しさん
24/06/24 15:22:42.93 qmamFw0P.net
AWKを使ったことないは理解できるが名前すら知らないって最近の人はこんなのばっかなの?
怖いんだけど
使ったことないはまだ理解できるけど
名前すら知らないって

115:デフォルトの名無しさん
24/06/24 17:22:13.19 FfGi9EOd.net
>>112
>>67 と同じ話を何で何度もすんねん。

116:デフォルトの名無しさん
24/06/24 18:41:22.73 OzsKCRyN.net
ごめんチャイ、気が付かなんだ

117:デフォルトの名無しさん
24/06/25 13:37:20.72 ZtCD4zFU.net
おじいちゃんお薬の時間です

118:デフォルトの名無しさん
24/06/25 14:42:15.39 Z9mp1IOT.net
薬はまだかね?
代金は受け取っただろ。

119:デフォルトの名無しさん
24/06/26 00:52:44.98 yv8Z2CuH.net
都知事選もとりあえずポスターに「AI」と書いておけばいいみたいな雑な扱い

120:デフォルトの名無しさん
24/06/26 12:32:40.93 j6fp+f8B.net
これほど乱れた都知事選になるとは

121:デフォルトの名無しさん
24/06/26 14:58:55.42 hXpRZohR.net
民主政治の末期症状見てるみたいな気分になる
制度改革が必要だな

122:デフォルトの名無しさん
24/06/26 21:32:42.48 yv8Z2CuH.net
都知事選でAIがどうこう言っている立候補者はすべてレベルが低い。

123:デフォルトの名無しさん
24/06/27 10:11:18.36 OTNDZ+yC.net
スレチ

124:デフォルトの名無しさん
24/08/22 05:50:05.33 0OofYQEx.net
AWKは単独で使うものじゃないけど、プログラミング言語と言い出す人間は、ほとんど素人だ。

125:デフォルトの名無しさん
24/08/22 11:19:47.79 IKT838Oo.net
HTML5よりはプログラミング言語ωだな

126:デフォルトの名無しさん
24/08/22 11:23:05.76 0OofYQEx.net
HTML5は終わりましたけど?

127:デフォルトの名無しさん
24/08/22 14:07:14.76 BM6SBb1s.net
>>124
> プログラミング言語と言い出す人間は、ほとんど素人だ。
The AWK Programming Language の著者の Aho、Kernighan、Weinberger のことか。

128:デフォルトの名無しさん
24/08/22 17:16:28.07 0OofYQEx.net
>>127
そう。それを読んでプログラミング言語と説明するニワカが昔からいる

129:デフォルトの名無しさん
24/08/22 18:36:32.87 faui27PU.net
>>128
読んだニワカでなく、Programming Language と書いた人はどうなの? って。
ニカワのように貼りついてすまんが。

130:デフォルトの名無しさん
24/08/22 20:11:53.65 0OofYQEx.net
>>129
AWKはプログラミング言語として使われることはほとんどない。
しかも作った彼らは、プログラミング言語というよりはsedのような使い方をするものとして用意している。
つまり、実際にはシェルスクリプト内の一部だったり、プログラミング言語というのはプログラミング言語の内のプログラミング言語であるから、そこまでわからずに「プログラミング言語」と言ってしまうと知識がないのとがばれる。

131:デフォルトの名無しさん
24/08/22 20:13:29.79 0OofYQEx.net
>>129
その3人はAWKを作ったひと本人
別の人間がAWKを説明しているわけではない

132:デフォルトの名無しさん
24/08/23 06:04:36.15 yV+TW/F+.net
なにか嫌なことでもあったのか?

133:デフォルトの名無しさん
24/08/23 14:32:57.60 TJ+3Kp9a.net
awkはfilter用に特化したプログラミング言語
はい
おしまい

134:デフォルトの名無しさん
24/08/26 00:32:32.66 mcDGuhqL.net
アスペはモノの呼び名に無意味にこだわるよな
力の入れどころがピントズレてるから何事も成し遂げられない無能😨

135:デフォルトの名無しさん
24/08/26 01:02:38.84 cg8iPsZ2.net
AWKは高機能コマンドという位置づけ
これをプログラミング言語と説明し始める技術者が昔からいる
他人が言ったことの受け売りだからAWKの使われ方を説明できない

136:デフォルトの名無しさん
24/08/26 10:39:29.32 3+7ACU+U.net
HTML5はプログラミング言語プルプル

137:デフォルトの名無しさん
24/08/26 11:00:10.36 ln9LIwsB.net
>>135
この辺りが受け売り?
> プログラミング言語と言い出す人間は、ほとんど素人

138:デフォルトの名無しさん
24/08/26 17:26:29.31 VJ190nsi.net
AWKの書籍やAWKの紹介の初めにプログラミング言語と書かれているので、そこだけを読み取って他人にAWKをプログラミング言語と説明するのが恥ずかしいということ。
awkコマンドの引数に手続き処理の文字列を指定できるだけで、AWKは単独で何かの処理を完結させるものではない。
毎回、長いAWKのコマンドを打ち込む人間だったら当てはまらないが、今度は再利用という概念がないことになるのでやはりおかしい。
テストでも毎回、キーボードから打つ初心者はいる。コピーという概念もなければ、ファイルにしてファイルを読み込むという発想すらない。
そこでシェルスクリプトを使うべきと説明しても、キーボードの手打ちにこだわってキーボードのキーを強打するやつはキーボードを叩くのが好きなので、キーを打つ回数が多くないと不機嫌になる。

139:デフォルトの名無しさん
24/08/26 18:36:31.89 FhzwHLyM.net
CGIはプログラミング言語(キリっ

140:デフォルトの名無しさん
24/08/26 18:39:41.56 FhzwHLyM.net
>awkコマンドの引数に手続き処理の文字列を指定できる
引数の - (stdinを意味する) とか
teeとかしらんのか

141:デフォルトの名無しさん
24/08/26 19:36:00.43 1zt/vBon.net
まあこういう考えもあるのかと思っておけばいいのでは
理解とか説得とかじゃなくて、読んでる人が誤解しそうだからのコメントだったら
読む人のためになると思うが

142:デフォルトの名無しさん
24/08/26 20:15:21.46 VJ190nsi.net
>>140
それはawkの話ではない。

143:デフォルトの名無しさん
24/08/26 20:17:18.06 VJ190nsi.net
わざわざロジックをawkに担当させるのは趣味が悪すぎる

144:デフォルトの名無しさん
24/08/26 21:08:03.62 ln9LIwsB.net
$ date '+%s'
1724673881
てコマンドオプションが思い出せなくて、
$ gawk 'BEGIN{ print systime() }';
1724673881
で代用することあるある。

145:デフォルトの名無しさん
24/08/26 22:58:23.62 R6Owoni0.net
>>142
引数の-を解釈するのはawkだけどな

146:デフォルトの名無しさん
24/08/27 00:41:01.50 jPnUMQmz.net
UNIXはハイフンを特殊文字として扱う仕様になっている。

147:デフォルトの名無しさん
24/08/27 14:15:08.68 oHcafaf7.net
ぶっちゃけperlとかpython覚えたらawk要らんけどね

148:デフォルトの名無しさん
24/08/27 15:17:22.25 apM/pcD7.net
ぶっちゃけ awk覚えたら sed要らんけどねてのは一面真実なのだけど、sedは記述が短くて手放せないてのも、事実だったりする。

149:デフォルトの名無しさん
24/08/27 16:41:08.74 236o/Knq.net
>>147
コンピューターの性能が上がったせいで、awkの出番がなくなった。

150:デフォルトの名無しさん
24/08/29 09:38:52.02 1jszJs3n.net
awkは紛うこと無きプログラミング言語(キリっ

151:デフォルトの名無しさん
24/08/29 11:08:24.17 Ju1sdRVj.net
awkでもpythonでもrubyでもsedでもソースを見ればどの言語かわかる
ごっちゃまぜでも問題なく実行する何でもOK言語は作れないのだろうか

152:デフォルトの名無しさん
24/08/29 12:14:04.63 1jszJs3n.net
token分割した単位でも区別出来れば楽だろうけど
ある程度の文脈で観ないと判らんのでは

153:デフォルトの名無しさん
24/08/29 13:15:32.38 CUm3HRgm.net
ごちゃまぜとはいかんが、Perl で Inline でも使ってみる?
URLリンク(perldoc.jp)
awk も ruby も python もサポートされてるぞ。

154:デフォルトの名無しさん
24/08/29 23:44:22.19 N4XBWKhx.net
要は知ったかぶりがしてしまう説明はやめろということ。

155:デフォルトの名無しさん
24/08/30 07:45:14.66 FeMupkVu.net
知ったか。これか。
> AWKは単独で使うものじゃないけど、プログラミング言語と言い出す人間は、ほとんど素人だ。

156:デフォルトの名無しさん
24/08/30 09:29:41.59 742oYIEC.net
awklandωωω

157:デフォルトの名無しさん
24/08/30 11:21:27.27 qi4n2TPj.net
まあ、そうだな。知ったかぶりはかっこ悪いな。
……これでいいか?
煽ってるわけじゃなくてな、これ以外に何を言えばいいのか…

158:デフォルトの名無しさん
24/08/30 12:40:15.18 bLuOfswJ.net
awkland紛争勃発

159:デフォルトの名無しさん
24/09/07 11:40:55.97 LaGZ4PBX.net
フーン

160:デフォルトの名無しさん
24/09/13 16:25:22.25 bblj+c3p.net
He does not talk that much about.

161:デフォルトの名無しさん
24/09/15 09:55:25.02 xw1jp1Zr.net
もしかしてforkland紛争


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch