This seems to cure the failures you quote except for the processing speed - I'm afraid you can't do faster...
Code:
awk '
NR == FNR {a[$1] = $2
next
}
{printf "%s\t@\t", $0
L = sub (/\.$/, _)
for (i=1; i<=NF; i++) if ($i in a) $i = a[$i]
if ($1+0) sub ($1 FS, _)
printf "%s%s\n", $0, L?".":""
}
' file2 file1
1 No one have never become rich by giving. @ No one has ever become poor by giving.
Anne Dickens @ Anne Frank
2 No one is worthless in this globe who lightens the weights of other. @ No one is useless in this world who lightens the burdens of another.
Charles_Dickens @ Charles_Dickens
how can i create a script with a correct control flow/loop(?) to
provide output from 3 files?
file1
one
two
three
file2
yellow
red
orange
file3
banana
apples
cantaloupes
output file:
one (1 Reply)
Hello friends,
This query is with regards to a script (pl/sql) which returns multiple values.
Please see below script wherein the query returns a single value and is assigned to a single variable
DB_VALID_CDR=`sqlplus -s user/pass<<!EOF | grep -v "^Connected" 2>&1
set termout off echo... (2 Replies)
hi
I have two tables in oracle DB and am using a joining query which will result in the output as follows.
i need to assign it to a two dimensional array and use it for my further calculations.
the way i tried is as follows.
#!/bin/ksh
export... (1 Reply)
I have a string as "yes why not"
I want to create one array variable with contents as one word per place in array..
for above string,the array variable should contain...
x="yes,why,not"
x = yes
x = why
x = not
Please help me,I am stuck up in the problem since 2 days... (3 Replies)
Hi Masters,
I want to assign the values of one variable to another variable.
Here the varaible name 'var' is dynamic. I know the values of V_2 and U_3, but
If the i/p of TYPE is 'U' and the NO is 3, then I want to assign the values of
U_3 to var.
How we can achieve it?
TYPE="U"... (4 Replies)
For example, I have a file with below lines containing VOB tags and VOB paths.
* /vobs/fts/FTSUSM20_VOB /ccvobsslx01/projects/vobs/eml/FTSUSM20_VOB
* /vobs/fts/FTS20_VOB /ccvobsslx01/projects/vobs/eml/FTS20_VOB
* /vobs/pmv/PMS_VOB /ccvobsslx01/projects/vobs/cpm/_/PMS_VOB
*... (4 Replies)
Hi,
I have a String(words with tab space) in a file ->file1.txt
0xxxx 11 test $aa$ 8.43
when i read the file and assign to variable
value=$(cat file1.txt)
echo $value
i get the output without tab spaces.
0xxxx 11 test $aa$ 8.43
How to assign string... (2 Replies)
I have a file containing multiple values, some of them are pipe separated which are to be read as separate values and some of them are single value all are these need to store in variables.
I need to read this file which is an input to my script
Config.txt
file name, first path, second... (7 Replies)
hello, i am running an AIX6.1 machine and i am trying to restore a volume group that i backed up using mkvgdata command from another server. although i checked file .data and i make sure that PP size for this volume group is 128, when i run restvg command to restore it, it fails because it... (2 Replies)
Not able to sorting two fileds resolved printf issue
01-1000/9|JAN
01-0000/6|MAN
01-1010/2|JAN
01-1010/2|JAN
01-1010/2|JAN
01-1000/9|JAN
01-1000/9|JAN
01-1000/9|SAA
01-1000/9|SAA
01-0000/6|SAN
01-0000/6|SAN
1.sort -t'|' -k1,1n -k2,2 file (3 Replies)
Discussion started by: kalia4u
3 Replies
LEARN ABOUT MOJAVE
english
English(3pm) Perl Programmers Reference Guide English(3pm)NAME
English - use nice English (or awk) names for ugly punctuation variables
SYNOPSIS
use English;
use English qw( -no_match_vars ) ; # Avoids regex performance penalty
# in perl 5.16 and earlier
...
if ($ERRNO =~ /denied/) { ... }
DESCRIPTION
This module provides aliases for the built-in variables whose names no one seems to like to read. Variables with side-effects which get
triggered just by accessing them (like $0) will still be affected.
For those variables that have an awk version, both long and short English alternatives are provided. For example, the $/ variable can be
referred to either $RS or $INPUT_RECORD_SEPARATOR if you are using the English module.
See perlvar for a complete list of these.
PERFORMANCE
NOTE: This was fixed in perl 5.20. Mentioning these three variables no longer makes a speed difference. This section still applies if
your code is to run on perl 5.18 or earlier.
This module can provoke sizeable inefficiencies for regular expressions, due to unfortunate implementation details. If performance matters
in your application and you don't need $PREMATCH, $MATCH, or $POSTMATCH, try doing
use English qw( -no_match_vars ) ;
. It is especially important to do this in modules to avoid penalizing all applications which use them.
perl v5.18.2 2014-01-06 English(3pm)