du -ch /home/bzz/.cache*
даст вам общий размер всех файлов который начинается с .cache
в / home / bzz /
.
Este awk
script intenta implementar las operaciones que usted describe:
BEGIN { OFS = FS = "," }
NR == 1 { name = "N/A" }
NR > 1 {
# use values from previous row if missing
if ($1 == "") $1 = trans
if ($3 == "") $3 = date
if ($5 == "") $5 = name
$2 = "Expense"
$9 = 0.13 * $8
$8 -= $9
# set values that may be used by the next row
trans = $1
date = $3
name = ($5 == "" ? "N/A" : $5)
}
{ print }
Ejecutar esto en los datos de ejemplo que ha proporcionado:
$ awk -f script.awk file.csv
Trans #,Type,Date,Num,Name,Memo,Account,Debit,Credit
1321,Expense,1/4/2013,1127,N/A,Consulting,Cash on Hand,0,0
1321,Expense,1/4/2013,,N/A,,IT Services,17.9307,2.6793
1321,Expense,1/4/2013,,N/A,,,17.9307,2.6793
1321,Expense,1/4/2013,,N/A,,,0,0
1322,Expense,7/3/2013,1128,N/A,Utilities,Cash on Hand,0,0
1322,Expense,7/3/2013,,N/A,,Utilities,91.785,13.715
1322,Expense,7/3/2013,,N/A,,,91.785,13.715
1322,Expense,7/3/2013,,N/A,,,0,0
1323,Expense,4/3/2013,1129,N/A,Bell,Cash on Hand,0,0
1323,Expense,4/3/2013,,N/A,,Telephone,406.02,60.6697
1323,Expense,4/3/2013,,N/A,,,406.02,60.6697
1323,Expense,4/3/2013,,N/A,,,0,0
1324,Expense,1/3/2013,1130,N/A,Consulting,Cash on Hand,0,0
1324,Expense,1/3/2013,,N/A,,IT Services,17.9307,2.6793
1324,Expense,1/3/2013,,N/A,,,17.9307,2.6793
1324,Expense,1/3/2013,,N/A,,,0,0
1325,Expense,6/3/2013,1131,N/A,Utilities,Cash on Hand,0,0
1325,Expense,6/3/2013,,N/A,,Utilities,68.8083,10.2817
1325,Expense,6/3/2013,,N/A,,,68.8083,10.2817
1325,Expense,6/3/2013,,N/A,,,0,0
Esto no corresponde a su salida esperada, pero dado que su salida esperada no estaba de acuerdo con las especificaciones en primer lugar, no traté de interpretar eso demasiado.