Za OFS
můžete přidat čárku (Oddělovač výstupních polí):
awk -F"," 'BEGIN { OFS = "," } {$6="2012-02-29 16:13:00"; print}' input.csv > output.csv
Výstup:
2012-02-29,01:00:00,Manhatten,New York,234,2012-02-29 16:13:00
2012-02-29,01:00:00,Manhatten,New York,843,2012-02-29 16:13:00
2012-02-29,01:00:00,Manhatten,New York,472,2012-02-29 16:13:00
2012-02-29,01:00:00,Manhatten,New York,516,2012-02-29 16:13:00
UPRAVIT odpovědět na komentář SirOracle
:
Od awk
manuálová stránka:
-v var=val
--assign var=val
Assign the value val to the variable var, before execution of the program begins. Such
variable values are available to the BEGIN block of an AWK program.
Přiřaďte tedy své datum proměnné shellu a použijte ji v awk
:
mydate=$(date)
awk -v d="$mydate" -F"," 'BEGIN { OFS = "," } {$6=d; print}' input.csv > output.csv
Udělal bych:
awk '{ printf("%s,2012-02-29 16:13:00\n", $0); }' input.csv > output.csv
Toto pevně zakóduje hodnotu, ale také váš kód.
Nebo můžete použít sed
:
sed 's/$/,2012-02-29 16:13:00/' input.csv > output.csv
Jak mohu spustit kód PHP z příkazového řádku?
Jak vyvolat systémové volání přes syscall nebo sysenter v inline sestavení?