No.3ベストアンサー
- 回答日時:
>notnotさんに提示していただいたスクリプトは、どのようにして実行させればよいのでしょうか。
シェルプロンプトでそのまま打ち込むか、あるいは、そのままシェルバッチスクリプト中に書けば良いです。
>awkを実行させるのに、「jgawk -f "プログラム名" "データ名" > "結果表ファイル名"」と、バッジファイルを作って実行させるやり方しか知りません。
' と ' に囲まれた中をpgm.awkに書いて、
awk -F, -f pgm.awk file1 file2 file3 > file4
としても良いです。
>各ファイルが複数行ある場合、どのようにすればよいのでしょうか。
・各ファイルの行数は同じ
・各ファイルの同一行数目の数字個数は同じ
とすると、awkプログラムを別ファイルに書く方式で示すと下記のようになります。
BEGIN{FS=","} #入力行のセパレータをカンマにする
{L=FNR;N[FNR]=NF #ファイル行数をLに、j行目の数字個数をN[j]に入れる
for(i=1;i<=NF;++i) SUM[FNR,i]+=$i} #j行目のi番目の各数字をSUM[j,i]に足しこんでいく
END{
for(j=1;j<=L;++j) {
for(i=1;i<N[j];++i) printf"%d ",SUM[j,i]
printf"%d\n",SUM[j,N[j]]
}
}
提示していただいたプログラムを意味が分かるまで何度も読み返しました。「なるほど」と思う事がいくつもあり、まだまだ初心者ですが、プログラムを作る楽しさが分かってきました。丁寧に教えていただき、ありがとうございました。
No.2
- 回答日時:
各ファイル1行ずつしかないのなら、
awk -F, '{N=NF;for(i=1;i<=NF;++i) A[i]+=$i}
END{for(i=1;i<N;++i) printf"%d ",A[i];printf"%d\n",A[N]}' file1 file2 file3 > file4
この回答への補足
回答していただいたのですが、私は、初心者のため、awkを実行させるのに、「jgawk -f "プログラム名" "データ名" > "結果表ファイル名"」と、バッジファイルを作って実行させるやり方しか知りません。notnotさんに提示していただいたスクリプトは、どのようにして実行させればよいのでしょうか。
また、各ファイルが複数行ある場合、どのようにすればよいのでしょうか。
No.1
- 回答日時:
Bシェルで書きますと、
#!/bin/sh
sum1=0
sum2=0
sum3=0
for in_file in file1 file2 file3
do
num1=`cat $in_file | awk -F, '{print $1}'`
num2=`cat $in_file | awk -F, '{print $2}'`
num3=`cat $in_file | awk -F, '{print $3}'`
sum1=`expr $sum1 + $num1`
sum2=`expr $sum2 + $num2`
sum3=`expr $sum3 + $num3`
done
echo "$sum1 $sum2 $sum3" > file4
で出来ます。一応動作確認もしました。
file1~3が複数行から成り立っている場合は、上記では構文エラーになりますので、1行ずつ読んで・・・というロジックに修正する必要がありますが、ken8911さんの挙げた例に即せば、これで十分だと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 画像編集・動画編集・音楽編集 DVD Styler トラブル解決方法 6 2022/10/29 16:00
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
- PHP 値の取り出し方について教えて下さい。 1 2023/03/31 13:30
- その他(プログラミング・Web制作) セレクトボックスで選択された値をコントローラーで使用したい 2 2022/07/26 16:41
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- その他(プログラミング・Web制作) Fortranでの出力ファイル 2 2023/03/21 21:25
- iOS ファイルの名前変更 2 2022/08/11 20:47
- Visual Basic(VBA) vbaの構文の修正相談(xmlファイルを順に開いてコピペ作業) 1 2023/04/22 01:18
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
楽しくて最高のプログラミング...
-
ラズパイpico PIOモード
-
小学1年生の子です。塾に行かせ...
-
プログラミング
-
pythonで複数画像からgifを作る...
-
Pythonでgif画像が上手く作れない
-
プログラミング ソースコード
-
正規表現で複数マッチ条件で悩...
-
vba クリップボードクリアにつ...
-
RTKPOSTのファイル生成について
-
windowsでテキストファイルの各...
-
Pythonって何を意識した言語な...
-
pythonにてseleniumを使うも、...
-
Gitについて質問。 クローンし...
-
スカラーのベクトル微分
-
matplotlibで任意の角度の円弧...
-
プログラミングで例えばゲーム...
-
Webサイト内に埋め込んだmp4動...
-
テキストファイルのファイル名...
-
Selenium4でボタンをクリックで...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
chatGPTで次々と質問をしていく...
-
昔のパソコン少年の武勇伝「店...
-
スカラーのベクトル微分
-
ハッシュテーブル(連想配列)が...
-
最新のプログラム言語を学ぶに...
-
pythonにてseleniumを使うも、...
-
Windowsのアプリ開発ってなんの...
-
vba クリップボードクリアにつ...
-
Google ColaboでGUI作成
-
sublimit textっていうエディタ...
-
フリーランスのエンジニアって...
-
ExcelVBAでFormulaR1C1を列範囲...
-
matplotlibで任意の角度の円弧...
-
そのまま使っただけなのに・・...
-
家庭のパソコンで Python の 環...
-
初心者powershellのPS1ファイル...
-
Webプログラムってネイティブア...
-
httpリクエストの送り元の特定
-
プログラミングで例えばゲーム...
-
rpa化する言語としてら何があり...
おすすめ情報