hashfields ¶
Selectively hash, drop, or keep fields from a flat file (e.g. CSV).
Example ¶
$ echo "column1,column2,column3,column4
r1c1,r1c2,r1c3,r1c4
r2c1,r2c2,r2c3,r2c4
r3c1,r3c2,r3c3,r3c4
r4c1,r4c2,r4c3,r4c4" | hashfields --alg sha256 --drop column1 column3 --skip column2
column2,column4
r1c2,fb66e41761a74ea0c042e1c226c04fa2ce1a1334d7063d86230d17f33f109b68
r2c2,6051c006caee661a6ccb390b8cf7a43230c5cd7b54861f7306a598b612f924b9
r3c2,7e32c53b7729f5dce7ac54232b7f2d93d6c78ed19fc8d096b0fde948f513e9dc
r4c2,f8d0624d128daf97c61ec28f4396e8f14be2ca2940d18fdf33e939cda9bd1824
Input CSV ¶
Given this input CSV:
column1,column2,column3,column4
r1c1,r1c2,r1c3,r1c4
r2c1,r2c2,r2c3,r2c4
r3c1,r3c2,r3c3,r3c4
r4c1,r4c2,r4c3,r4c4
as a table:
column1 | column2 | column3 | column4 |
---|---|---|---|
r1c1 | r1c2 | r1c3 | r1c4 |
r2c1 | r2c2 | r2c3 | r2c4 |
r3c1 | r3c2 | r3c3 | r3c4 |
r4c1 | r4c2 | r4c3 | r4c4 |
Configuration ¶
These hashfields
configuration options:
- Hash algorithm:
SHA256
- Drop:
column1
,column3
- Skip:
column2
Output CSV ¶
hashfields
produces this CSV:
column2,column4
r1c2,fb66e41761a74ea0c042e1c226c04fa2ce1a1334d7063d86230d17f33f109b68
r2c2,6051c006caee661a6ccb390b8cf7a43230c5cd7b54861f7306a598b612f924b9
r3c2,7e32c53b7729f5dce7ac54232b7f2d93d6c78ed19fc8d096b0fde948f513e9dc
r4c2,f8d0624d128daf97c61ec28f4396e8f14be2ca2940d18fdf33e939cda9bd1824
as a table:
column2 | column4 |
---|---|
r1c2 | fb66e41761a74ea0c042e1c226c04fa2ce1a1334d7063d86230d17f33f109b68 |
r2c2 | 6051c006caee661a6ccb390b8cf7a43230c5cd7b54861f7306a598b612f924b9 |
r3c2 | 7e32c53b7729f5dce7ac54232b7f2d93d6c78ed19fc8d096b0fde948f513e9dc |
r4c2 | f8d0624d128daf97c61ec28f4396e8f14be2ca2940d18fdf33e939cda9bd1824 |