04-16-2008
Append value(batch number) to start of records
Hi all,
I am new to unix shell scripting and I am trying to append batch number that comes in Trailer record to the detailed record.
TR|20080312|22881 |000000005|20080319|2202
LN|20080312|077777722220 |0000100000017|ABS
LN|20080312|000799439326 |0000709943937|AA
TR|20080313|22897 |000000008|20080319|2202
LN|20080313|077777722220 |0000100000017|BCG
LN|20080313|603497005222 |0000600070057|ADXC
TR|20080314|22898 |000000011|20080319|2202
LN|20080314|077777722220 |0000100000017|kKAS
LN|20080314|603497005222 |0000600070057|adfras
This is how my data would be. I want to pull out Batch number i.e 4th column in the record that starts with TR and append it to first column of LN. This is one single file.
Filename=$1
grep '^TR' $Filename>A.txt
grep '^LN' $Filename>B.txt
#join -t"|" -1 2 -2 2 -0 1.4 A.txt B.txt >C.txt
cat B.txt | while read line
do
var=`echo $line | cut -d"|" -f2`
cat A.txt | while read value
do
val=`echo $value | cut -d"|" -f2`
val1=`echo $value | cut -d"|" -f4`
if [[ $var == $val ]]
then
line=$val1"|"$line
echo $line>>Apple.txt
fi
done
done
I tried the above code and its very very slow. The volume of records is from 2Mb to 60 MB.
Please adive. I think awk is faster but not sure how to do it in awk
Thanks
Kiran
10 More Discussions You Might Find Interesting
1. AIX
Hi ,
I am trying to execute one script residing on server B from server A and in automated way but with a trigger.
My main quetion are
1) How I will login to the remote server automatically with user name and password. ( rsh or any other way ?)
2) Once logged in I need to execute... (2 Replies)
Discussion started by: agent47
2 Replies
2. Shell Programming and Scripting
Hi All,
Great Forum and Great help. Keep up the good work.
My question is what is the command and it's syntax to append a record to an output file using PERL. Please provide the command syntax.
In regular shell you can use the '>>' to append.
Basically, I am creating a small report... (1 Reply)
Discussion started by: nurani
1 Replies
3. Shell Programming and Scripting
Hi,
I want to append # at the start of line wherever keyword xyz is found through stream editor? Is it possible? (18 Replies)
Discussion started by: db2cap
18 Replies
4. UNIX for Dummies Questions & Answers
hi,
i have some values in excel sheet as in below format:
122
144
222
555
666
etc....
i need to get the output in the below manner..
£122
£144
£222
£555
£666 (1 Reply)
Discussion started by: arunmanas
1 Replies
5. UNIX for Dummies Questions & Answers
I did some searches, but couldn't really find what I'm looking for. I have a file formatted as below:
BOF ABC CO - XYZ COMM DATA OF 07/05/2011
EBA00000001 sdfa rtyus uyml
EBB00000001 54682 984w3
EBA00000002 mkiyuasdf 98234
I want to pull the date from the header record and add it... (4 Replies)
Discussion started by: keeferb
4 Replies
6. Windows & DOS: Issues & Discussions
Morning,
I'm trying to execute a vbs from a .bat file. Can someone tell me what the difference is between these statements:
start c:\lib\runit.vbc
c:\lib\runit.vbs
When I run the batch with the 'start' parameter it doesn't seem to do anything. (1 Reply)
Discussion started by: Grueben
1 Replies
7. Shell Programming and Scripting
I would like to print the number of records of 2 files, and divide the two numbers
awk '{print NR}' file1 > output1
awk '{print NR}' file2 > output2
paste output1 output2 > output
awl '{print $1/$2}' output > output_2
is there a faster way? (8 Replies)
Discussion started by: programmerc
8 Replies
8. Shell Programming and Scripting
Hi Freinds ,
I have 2 files .
File 1
|nag|HYd|1|Che
|esw|Gun|2|hyd
|pra|bhe|3|hyd
|omu|hei|4|bnsj
|uer|oeri|5|uery
File 2
|nag|HYd|1|Che
|esw|Gun|2|hyd
|uer|oi|3|uery
output : (9 Replies)
Discussion started by: i150371485
9 Replies
9. Shell Programming and Scripting
Hi Power User,
I'm trying to compute this kind of text file format:
file1:
jakarta 100 150
jakarta 170 210
beijing 220 250
beijing 260 280
beijing 290 320
new_york 330 350
new_york 370 420
tokyo 430 470
tokyo 480 ... (2 Replies)
Discussion started by: anjas
2 Replies
10. Shell Programming and Scripting
Thanks for RudiC for his extraordinary help on organizing files in a batch of 10 using below code.
FL=($(ls));
for ((i=0;i<=${#FL};i++)); do
for j in ${FL:$i:10};
do
$batch ${j} ${j}.txt
done;
echo "Pausing for next iteration";
echo... (6 Replies)
Discussion started by: busyboy
6 Replies
LEARN ABOUT HPUX
ipsec_config_batch
ipsec_config_batch(1M) ipsec_config_batch(1M)
NAME
ipsec_config_batch - allow for processing of IPsec config operations in a single batch file
SYNOPSIS
batch_file_name profile_file]
DESCRIPTION
The command allows you to specify multiple and operations in a single batch file for processing. HP-UX IPSec processes the operations in a
batch file as a group. This mode is useful if you are adding or deleting configuration records that may affect other records.
If one operation is invalid, all operations in the batch file fail. The utility first verifies each operation in the batch file for syntax
errors and collisions (object names and priority values) with existing entries in the configuration database. If all operations in the
batch file are valid, the HP-UX IPSec infrastructure updates the configuration database with all operations at the same time. If HP-UX
IPSec is active and running, the HP-UX IPSec infrastructure also updates the runtime policy database.
Options and Operands
The batch operation recognizes the following options and operands:
batch_file_name
The name of the batch file containing and operations.
A batch file cannot contain operations that operate on the following objects:
For example, the
operation is illegal in a batch file.
In addition, a batch file cannot contain the following commands:
o does not allow recursive batch files) or commands.
o
o
Lines starting with a pound sign are interpreted as comments. Comment lines within an operation are not allowed.
Maximum length: 1023 characters.
Default: None.
The utility verifies the and operations, but does not add or delete entries in the configuration database. This option applies to
all operations in the batch file. Individual operations in the batch file cannot specify the option.
Specifies the name of the profile file containing default argument
values for this policy. The argument values are evaluated once, when the policy is added to the configuration database. Val-
ues used from the profile file become part of the configuration record for the policy.
This argument applies to all operations in the batch file. Individual operations in the batch file cannot specify the profile
argument.
Maximum length: 1023 characters.
Default:
EXAMPLES
The file contains the following entries:
AUTHOR
was developed by HP.
FILES
configuration database.
default profile file.
SEE ALSO
ipsec_admin(1M), ipsec_config(1M), ipsec_config_add(1M), ipsec_config_delete(1M), ipsec_config_export(1M), ipsec_config_show(1M),
ipsec_migrate(1M), ipsec_policy(1M), ipsec_report(1M).
HP-UX IPSec Software Required ipsec_config_batch(1M)