- ベストアンサー
カンマ区切りの列の置換を行いたい場合
以下のようなファイルをあり三カラム目自体を置換したい場合どうすればいいでしょうか? 三カラム目の文字数が固定ではないためcutなどでの切り出しも難しいのでなにかいい案はないでしょうか? 例 1234,12,34567,abcd,efg,
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
意図した形か判らないが、sedを使って3カラム目を任意の文字列に変換する場合。 cat あなたのテキストファイル | sed -e "s/\(^[^,][^,]*\),\([^,][^,]*\),\([^,][^,]*\),/\1,\2,ここに置換したい文字列を入れる,/g" 計算を伴うなら、#1の回答の通り、awkやperlなどを使うことになる。
その他の回答 (1)
- kmee
- ベストアンサー率55% (1857/3366)
回答No.1
置換とは具体的にどんな置換をしたいのでしょうか? 決まった文字列にするなら、sedでできます。 計算したり加工したりするなら、awkやperlがよいでしょう。
質問者
お礼
お礼のほうが遅れてしまい申し訳ありませんでした。 結果としてsedを使用して置換の方行うことができました。 ありがとうございました。
質問者
補足
ご回答のほどありがとうございます。 今考えているの置換したい情報をファイルに保持しそれを指定したカラムの値に置き換えるという方法で考えています。
お礼
お礼のほうが遅れてしまい申し訳ありませんでした。 上記の内容でやりたいことができました。 ありがとうございました。