There is a script which has presets stored in a tab-seperated file.
That script also has $help_text, which will be shown when called with invalid arguments or -h.
So i do need to have that file ready, so the help text can get the values out of the file, and print it with the $help_text.
That works, but i wonder if there is a way to do this with awk, as figured, it seems quite fast and power full, but until now i failed to see actual use for me.
How the relevant code parts look at the moment:
Which then should output like:
The bold HD in the comments are absolute optional, but a nice to have.
What i have so far:
(actualy had a better code last night, but since i failed with the bold thing, i just kept the above solution.)
Which looks like:
First question, can i make bold text with awk print?
Second question, is about the math and substitution, i've seen that gsub be used, but i fail to understand - how.
Using an example from another thread:
I get the feeling, somehow awk reads from right to left, rather then left to right, like bash.
Anyway, as last N gets set to 3, so substr can subtract it on print, but what is that 1 and $0 (colum 0, does that mean the whole line?) doing there?
Also on the first x=substr, again column 0... and N gets increased to 4??
Third question, how do i get the rest of the comments displayed?
awk is not shell. It does not have shell variables or shell substitutions. If you want shell variables in awk, you have to put them there. If you want substitutions, you'll have to use awk's.
$ means column in awk. That's why $1 gets you column one. Variables are just strings, like VAR=1. You can use an expression as a column number too, like print $(VAR+1) for column 2.
So, to get your variables, into awk, you will have to put them into awk.
Or the more old-fashioned
To get pixels, in awk code, I'd do this:
Also, doing grep | grep | grep | awk is pointless when it's that easy to just put it all in awk. You can replace this:
Hi, shell variables need to be passed to awk in a different way, for example: awk -v bold="$BOLD" -v rst="$RESET"
The variable can then be accessed as bold and rst
I would try something like this (not tested):
Last edited by Scrutinizer; 02-12-2015 at 02:38 PM..
This User Gave Thanks to Scrutinizer For This Post:
To get this right:
Split takes column 2, splits the string at the x's and saves its output in an array(like) variable for later usage.
Sadly, pixels get calculated to 0 but the bold text is working, thank you.
I'm now stuck at further parsing of bitrates, i'd like to put a 'kb' at its end as long bitrates do not exceed 1mb, then 'mb' should be appended.
But this doesnt show any output at all
Thank you in advance
EDIT:
So with Scrutinizer's suggestion, and commented out the switch block,
i get this:
Regarding the comments, do i need to have to blindly append columns after $6, so all the words of any possible comments become shown?
Also, ext=mb sets ext to blank unless mb happens to be set to something. I think you meant ext="mb"
Try: ext="kb" ; if(value >= 4) ext="mb";
Also, print "BOLD$1RESET" will print the literal words BOLD and RESET and the literal text $1. awk really is a different language than shell, it doesn't substitute inside quotes -- in fact it doesn't substitute, at all, ever. If you want the variables, do print BOLD $1 RESET
Lastly, and most importantly, you forgot to give awk a filename.
FYI,
I'm slowly removing a lot of the bold font-styles from titles of discussions, forum titles, etc
I'm not removing bold for the entire site because we do need bold from time to time, especially in posts and sometimes in other places.
However, the original forum style had way too much... (3 Replies)
Hi expert,
I have log :
TOTAL-TIME : 2125264636
DATA-BYTES-DOWN : 3766111307032
DATA-BYTES-UP : 455032157567
DL = (3766111307032/2125264636)/1024 = 1.73
UL = (455032157567/2125264636)/1024 = 0.21
I want the result :
TOTAL = 1.94 ... (4 Replies)
Hi
main object is categorize the difference of data-values (TLUFT02B - TLUFT12B).
herefor i read out data-files which are named
acording to the timeformat yyyymmddhhmm.
WR030B 266.48 Grad 0
WR050B 271.46 Grad 0
WR120B 268.11 Grad 0
WV030B 2.51 m/s ... (6 Replies)
Based on input
ail,UTT,id1_0,COMBO,21,24,21,19,85
al,UTHAST,id1_0,COMBO,342,390,361,361,1454
and awk code as
awk -F, '{ K=0; for(i=NF; i>=(NF-4); i--) { K=K+$i; J=J+$i;} { print K } } END { for ( l in J ) printf("%s ",J); }'
I'm trying to add columns and lines in single line. line... (6 Replies)
Hi I have this list
592;1;Z:\WB\DOCS;/FS3_100G/FILER112/BU/MPS/DOCS;;;;\\FILER112\BUMPS-DOCS\;580,116,544,878 Bytes;656,561 ;77,560
592;2;Z:\WB\FOCUS;/FS3_100G/FILER112/BU/MPS/FOCUS;;;;\\FILER112\BUMPS-FOCUS\;172,430 Bytes;6 ;0 ... (12 Replies)
hi I want to write a script, while using the SED editor, to output the text, in this case a variable, to the result file but highlighted it in bold, is it possible to do that? can you tell me how?
eg. in text.txt
sed '$ a\
'$variable'
' <text.txt >text2.txt
so it will add the... (2 Replies)
I am trying to do some math, so that I can compare the average of six numbers to a variable.
Here is what it looks like (note that when I divide really big numbers, it isn't a real number):
$ tail -n 6 named.stats | awk -F\, '{print$1}'
1141804
1140566
1139429
1134210
1084682
895045... (3 Replies)
Hi,
My file has 2 fields and millions of lines.
variableStep chrom=Uextra span=25
201 0.5952
226 0.330693
251 0.121004
276 0.0736858
301 0.0646982
326 0.0736858
401 0.2952
426 0.230693
451 0.221004
476 0.2736858
Each field either has a... (6 Replies)