- Although braces don't hurt and the parser will understand / eliminate them, too many of them makes the code difficult to read. {if (vn<=10) {vnx=vn } } can be written as if (vn<=10) vnx=vn without sacrifying logics but improving readability.
Yes, I will try to ensure all new code is trimmed down. For now, I don't want to mess with the other braces.
Quote:
- for every single input line, you execute those nested loops 20 x 4 x 26, i.e. 2080 times - quite lengthy for more than a few input lines.
Yes, I know no other working alternative.
Quote:
- instead of the 16 ifs for the vnx constants assignment, you could use an array.
How eloquent that is! This is the type of thing I was looking for—so many lines saved!
Quote:
- you seem to execute 2080 gsubs on $0 with different patterns, each and every one overwriting the former ones - not sure if each of those really makes sense and is necessary.
I hadn't known that; my thought was that gsub only executed on a match? Maybe something like (and I've tried to make this work for a while):
Quote:
I could imagine that if you explain your problem verbosely in plain English supporting this with a few meaningful examples, people in here could come up with a taylored, crisp proposal on how to improve and accelerate the solution.
Thank you. I try to keep speech to a min, so people aren't overwhelmed...
Quote:
EDIT:
This
is NOT a pattern {action} pair and will change vID with every new input line. Is that intended? Why then the /<sense id=\"n.*" level/?
It would actually be the same due to how the xml file stores things, but, that said, you are right; it is not necessary to run and rerun that variable, even if the info is constant. I've taken it out of the for loop and put it just before.
Here is the updated version:
I had made a version with such great notes, but upon finishing it, there was an error which I could fix. Likely I lost a bracket somewhere.
Once again, thank you all. I am still (always) open to any other suggestions.
*EDIT*
Updated script: XML dictionary file is now automatically downloaded to ~/.config/latin/ if not present. There is no manual downloading required. Just run the script and all is done automatically.
Last edited by bedtime; 02-26-2018 at 04:21 AM..
Reason: Updated script
Hi all,
This problem has cost me half a day, and i still do not know how to do.
Any help will be appreciated. Thanks advance.
I want to use a variable as the first parameters of gsub function of awk.
Example:
{
...
arri]=gsub(i,tolower(i),$1)
(which should be ambraced by //)
...
} (1 Reply)
Hello,
I have a variable that displays the following results from a JVM....
1602100K->1578435K
I would like to collect the value of 1578435 which is the value after a garbage collection. I've tried the following command but it looks like I can't get the > to work. Any suggestions as... (4 Replies)
Hi all
I want to do a simple substitution in awk but I am getting unexpected output. My function accepts a time and then prints out a validation message if the time is valid. However some times may include a : and i want to strip this out if it exists before i get to the validation. I have shown... (4 Replies)
Hi,
Can some one please explain the following line please throw some light on the ones marked in red
awk '{print $9}' ${FTP_LOG} | awk -v start=${START_DATE} 'BEGIN { FS = "." } { old_line1=$0; gsub(/\-/,""); if ( $3 >= start ) print old_line1 }' | awk -v end=${END_DATE} 'BEGIN { FS="." } {... (3 Replies)
I want to replace comma with space and "*646#" with space.
I am using the following code:
nawk -F"|" '{gsub(","," ",$3); gsub(/\*646\#/"," ",$3);print}' OFS="|" file
I am getting following error:
Help is appreciated (5 Replies)
Hey,
I would like to replace a string by a new one. Teh problem is that both strings should be variables to be flexible, because I am having a lot of files (with the same structure, but in different folders)
for i in daysim_*
do
cd $i/5/
folder=`pwd |awk '{print $1}'`
awk '{ if... (3 Replies)
Hi, I want to print the first column with original value and without any double quotes
The output should look like
<original column>|<column without quotes>
$ cat a.txt
"20121023","19301229712","100397"
"20121023","19361629712","100778"
"20121030A","19361630412","100838"... (3 Replies)
Hello,
I'm trying to substitute a string with leading zero for all the records except the trailer record using awk command and with variables. The input file test_med1.txt has data like below
1234ABC...........................9200............LF... (2 Replies)
Hi ALL,
I want to replace string occurrence in my file "Config" using a external file named "Mapping" using awk.
$cat Config
! Configuration file for RAVI
! Configuration file for RACHANA
! Configuration file for BALLU
$cat Mapping
ravi:ram
rachana:shyam
ballu:hameed
The... (5 Replies)