bash
1cat $test1 | 2 sed $(awk '{printf("s/\[%s\]/%s/g;",$1,$2)')}',$test2)
上記のようなコードを書いており、sedとawkを使って文字列の置換をしています。
データの件数としてましては、test1が19752件、test2が1065件です。
特定の文字列のみを置換したいのですが、件数が多くタイムアウトになってしまいます。
※実際はもっと長いソースなのですが、訳ありで記載できません。 ご了承ください。
test1には、数式の中にある[syoukei00]という文字列で(00の部分は可変です。)
test2には、下記のように置換対象文字列と置換後の文字列が入っています。
syoukei00 100 syoukei01 101 syoukei03 102 syoukei04 103
速度を改善したいのですが、早い記述方法などはありますでしょうか?
私なりに色々調べてみたのですが、良く分からなかった為質問させていただきます。
申し訳ありません。
また、bashはほとんど素人同然なので初心者マークをつけさせていただきました。
他に情報が欲しい等ありましたら、記載できる範囲で記載させていただこうと思います。
よろしくお願いいたします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/13 13:04