- 1 名前:login:Penguin mailto:sage [2008/07/07(月) 20:45:18 ID:wYmB5VwU]
- おーくについて語りましょう
- 54 名前:正月前 mailto:zzhong33@yahoo.co.jp [2009/12/29(火) 22:19:45 ID:UAwxD9+5]
- awk初心者です。
awkにはperlのjoinみたいの関数ありますか? perl: print join(":",$_);
- 55 名前:login:Penguin mailto:sage [2009/12/30(水) 01:06:12 ID:Q1gMau4C]
- データ集計に便利
- 56 名前:login:Penguin mailto:sage [2009/12/30(水) 01:44:22 ID:jMgIWDpO]
- >>54
BEGIN {OFS=":"}{$1=$1;print}
- 57 名前:正月前 [2009/12/31(木) 16:45:37 ID:z/pUNj8p]
- 重複を削除するBASHスクリプトに、perlの部分はawkの連想配列で書き換えたいんですが、splitした後の処理方法が分かりません
教えて頂ければ幸いです。 ----------------------------- hoge='a:b:c:d:a:b:c:d:a' echo -n $hoge | perl -F: -ane 'chop;foreach(@F){$s{$_}++ or push(@b,$_)}print join(":",@b)' -----------------------------
- 58 名前:login:Penguin mailto:sage [2010/01/05(火) 11:48:18 ID:iQ1ypvd/]
- 素人なりですけど
echo -n $hoge | awk 'BEGIN{OFS=":"}{n=split($0,a,":");m=1;for(i=1;i<=n;i++){if(!(a[i]in b)){$m=a[i];b[$m]++;m++}}print}'
- 59 名前:login:Penguin mailto:sage [2010/01/05(火) 12:34:43 ID:APedkSZb]
- echo -n $hoge | awk 'a[$0]++<1{printf(NR>1?RS:_)$0}' RS=:
- 60 名前:login:Penguin mailto:sage [2010/01/05(火) 12:50:31 ID:APedkSZb]
- a[$0]++<1 じゃなくて
!a[$0]++ とした方が1バイト短くなるな って、そういう趣旨じゃないか
- 61 名前:login:Penguin mailto:sage [2010/01/08(金) 21:03:31 ID:pPQjxZAI]
- プログラミングAWK 3度目の復刊
www.fukkan.com/fk/CartSearchDetail?i_no=68313239&tr=t
- 62 名前:正月前 mailto:zzhong33@yahoo.co.jp [2010/01/11(月) 22:20:00 ID:jx5sxsA2]
- >>58,59,60
ご回答、誠に有難うございました! まだawkの部分理解してないけど、期待通りの動作が確認できました!
- 63 名前:login:Penguin mailto:sage [2010/03/16(火) 14:08:38 ID:hRXCRI1I]
- Linuxじゃないんですが、Gawk on Windowsだと、
gawk '{print $1;}' data.txt ていうのは、クォーテーションはダブルにしないといけないんですね。。。
- 64 名前:login:Penguin mailto:sage [2010/03/16(火) 14:27:11 ID:OV90ZKd/]
- うん、引数文字列をどう解釈するかは awk じゃなくてシェルだから。
cmd.exe の仕様の問題であって、awk の側では対応しようにもできない。
- 65 名前:login:Penguin [2010/05/14(金) 13:36:36 ID:XjQaHos9]
- BEGIN {
printf "256倍のコードが提供されてる\n" printf "ttp://books.ascii.jp にアクセス\n" printf "本には4756101623なんてのがついてるけど、本の通りに入れるとnot found\n" } END { print "昔と本の内容が変わってるみたいだな" }
- 66 名前:login:Penguin mailto:sage [2010/05/14(金) 21:49:15 ID:KfNsslph]
- END {
print "まだ始まってもねーよっ!" } BEGIN { printf "・・・ごめ・・・\n" }
|

|