The UNIX and Linux Forums  
Helloやアメリカ合衆国へようこそ! UNIXおよびLinuxフォーラム!訪問し、当社のグローバルコミュニティに参加いただきありがとうございます。

Go Back   UNIXおよびLinuxフォーラム > トップフォーラム > シェルプログラミングとスクリプティング
Googleのunix.com



シェルプログラミングとスクリプティング KSH 、 CSH 、 shに、 bashの、はPerl 、 PHPは、削除するsed 、 Awkの、他のシェルスクリプトやシェルスクリプト言語についての質問の投稿はこちら。

その他のUNIXおよびLinuxフォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
ファイルと日程 mastachef UNIXのダミー質問と回答のため 1 2007年12月3日 02:12午後
日付を比較する... i_priyank シェルプログラミングとスクリプティング 3 2007年9月21日 12:50午前
日付を比較する ragha81 シェルプログラミングとスクリプティング 2 2006年11月1日 06:17午後
日付を比較する ragha81 シェルプログラミングとスクリプティング 17 2006年10月25日 05:38午後
Googleでは、日程の対象にされています。別の日の質問 MizzGail UNIXのダミー質問と回答のため 14 2003年10月24日 07:54午前

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek を搭載 Powered by Google
 
LinkBack スレッドツール このスレッドを検索 スレッドを評価 表示モード
  #1固定リンク)  
Old 2008年9月1日
BufferExploder BufferExploder is offline
登録ユーザー
  
 

参加日: 2008年09月
投稿数: 9
Awkの質問:サム日付

こんにちは、

私は、ログファイルは、次のレイアウトをしているが:

20080812 0 20
20080812 10月12日
20080812 10月12日
20080812 10月12日

私は"最後の3行上の" 12合計し、保存して" 20 "の最初の行にします。最終出力する必要があります

20080812 36 20

私は今まで自分よりawkは簡単にすべきだと思う?アドバイスに、感謝します。
  #2固定リンク)  
Old 2008年9月1日
dennis.jacob dennis.jacob is offline Forum Advisor  
Đ -学生
  
 

参加日: 2007年2月
場所:シンガポール/バンガロール/コーチン
投稿数: 596
私が適切かどうかが、ここで問題を入手していないアムのコードです:私だけは、最初の行の最初と3番目のフィールドを撮影されると仮定します。

コード:
awk 'BEGIN {sum=0; } {if (NR==1){ var1=$1; var3=$3;}  sum += $2; } END { print var1" "sum" "var3 }' filename
  #3固定リンク)  
Old 2008年9月2日
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
シェルプログラマは、著者
  
 

参加日: 2007年3月
場所:トロント、カナダ
投稿数: 2361

コード:
awk '
 NR==1 { var1=$1; var3=$3; next }
 { var2 += $2 }
END { print var1" "var2" "var3 }' filename
私は、あなたが本当にこれよりもっと複雑であるため、被疑者が望む場合は、おそらくあなたの入力をもっと完全にファイルを記述する必要があります。
  #4固定リンク)  
Old 2008年9月2日
BufferExploder BufferExploder is offline
登録ユーザー
  
 

参加日: 2008年09月
投稿数: 9
あなたの回答が、私はここでは、全体のファイルを置いていないおかげでごめんね:

200808260640 0 11383
200808210640 0
200808300640 0
200808300640 0
200808300640 0
200808260640 336528522 8844
200808260640 724271039 8080
200808260640 583502861 8077
200808210640 0
200808210640 0
200808210640 0
200808290640 0
200808290640 0
200808290640 0
200808290640 0
200808150640 0 7667
200808160640 0 3285
200808310640 0
200808150640 634799861 4703
200808150640 329658775 4704
200808150640 588901581 4875
200808160640 201718658 1424


どうすれば同じ日にするためのすべての金額は、 $ 2 、 $ 3は、日付を保存してください。のような例は、最初の記事で掲載した。

200808150640 0 7667

200808150640 634799861 4703
200808150640 329658775 4704
200808150640 588901581 4875


期待される結果:

200808150640 ( 634799861 329658775 588901581 ) 7667

私は完全にファイルをこのようにしたいだけ。アドバイスに、感謝します。
  #5固定リンク)  
Old 2008年9月2日
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
中毒
  
 

参加日: 2007年1月
場所: Варна 、 България /ミラノ、イタリア
投稿数:2869
ちょうど推測:
(または、 nawkを使用/ usr/xpg4/bin/awk Solaris上)

コード:
awk 'END \
{ for (dt in third) print dt, second[dt], third[dt] }
{ if (!_[$1]++) third[$1] = $3; second[$1] += $2 }
' filename
出力をソートする場合は、している場合(または使用asortiソートするパイプが必要 のGNU Awkの) 。または使用 Perlの

コード:
perl -ane'
  $third{$F[0]} = $F[2] unless $x{$F[0]}++;
  $second{$F[0]} += $F[1];
  print map "$_ $second{$_} $third{$_}\n", sort keys %x
    if eof' filename

編集radoulovで最終; 2008年9月2日に 06:22午前..
  #6固定リンク)  
Old 2008年9月2日
BufferExploder BufferExploder is offline
登録ユーザー
  
 

参加日: 2008年09月
投稿数: 9
非常に私の友人には魔法のように作品をありがとうございます。
  #7固定リンク)  
Old 2008年9月2日
dennis.jacob dennis.jacob is offline Forum Advisor  
Đ -学生
  
 

参加日: 2007年2月
場所:シンガポール/バンガロール/コーチン
投稿数: 596
このお試しください:

コード:
for each in $(cut -c1-8 filename | sort -u)
        do
        awk '/^'$each'/{ if ($2==0){ var1=$1;var3=$3;} sum+=$2; }END { print var1" "sum" "var3;}' filename
        done
Closed Thread

ブックマーク

スレッドツール このスレッドを検索
このスレッドを検索

高度な検索
表示モード このスレッド
このスレッド

投稿ルール
あなた ことができない。 新しいスレッドを投稿
あなた ことができない。 返信の投稿
あなた ことができない。 添付ファイルの投稿
あなた ことができない。 自分の投稿を編集

BBコード なる 〜の上に
スマイリー なる 〜の上に
[イメージ] コードは 〜の上に
HTMLコードは、 オフ
トラックバック なる 〜の上に
ピングバック なる 〜の上に
Refbacks なる 〜の上に




すべてGMT -4です。現在の時刻は 08:45午後


提供: vBulletin、著作権© 2000 - 2006、Jelsoft企業株式会社。言語翻訳による電源
vBCredits v1.4著作権© 2007 - 2008 、 PixelFXスタジオ
は、 UNIXおよびLinuxフォーラムのコンテンツ著作権© 1993 〜 2009 。すべての権利を管理しReserved.Ad RedTyger

コンテンツ関連のURLで vBSEO 3.2.0