
私は次のような形式のcsvファイルを持っています
input.csv
1,AREA,"POLYGON((103.855 1.27267,103.856 1.27316,103.851 1.27506,103.853 1.27941,103.853 1.2793,103.852 1.27879,103.852 1.27639,103.851 1.27624,103.851 1.27634,103.851 1.27661,103.851 1.27699,103.852 1.27985,103.852 1.28138,103.853 1.28188,103.853 1.28189,103.853 1.28058,103.853 1.28044,103.853 1.28048,103.853 1.28084,103.853 1.28206,103.853 1.28216,103.853 1.28205,103.853 1.28205,103.854 1.28196,103.854 1.28209,103.855 1.28141,103.855 1.2813,103.855 1.28086,103.856 1.28001,103.859 1.28528,103.859 1.28555,103.859 1.28556,103.859 1.28586,103.859 1.28587,103.859 1.28629,103.859 1.28662,103.859 1.28669,103.87 1.28157,103.873 1.27787,103.871 1.27586,103.863 1.26996,103.862 1.26924,103.861 1.2689,103.86 1.26869,103.859 1.26884,103.858 1.26921,103.856 1.2702,103.855 1.27088,103.856 1.27227,103.855 1.27253,103.851 1.27428,103.852 1.2739,103.855 1.27267))"
サイズが固定されていない3番目の列を削除したいのですが、
cut -d, -f3 --complement input.csv
しかし、うまく動作しません。ご協力いただければ幸いです。
答え1
このcut
ツールは、3 列目のカンマが区切り文字ではないことを認識できるほど賢くありません。
ただし、列の範囲を選択することもできます。この場合、-f1-2
列 1 から 2 が選択され、列 3 は除外されます。
ただし、一般的な CSV 処理には、Python や Perl などのスクリプト言語にあるような、より強力なパーサーが必要です。