The following seems pretty easy to me and doesn't need sort or uniq to get a list with no duplicates:
Code:
#!/bin/ksh
var=$(awk -F '( : )|[]]' '!($2 in a) {a[$2]; print $2}' Input)
printf 'var=%s\n' "$var"
If the file Input contains:
Code:
20140320 00:08:23.846 INFO [WebContainer : 84] - anything in line
20140320 00:08:23.846 Test [translate : 589] - Virtual and lab lab anything
20140320 00:08:23.846 Data [anything : 60] - anything in line
20140320 00:08:23.847 anyting [anything : 5] - anything in line
20140320 00:08:23.846 INFO [WebContainer : 84] - anything in line
20140320 00:08:23.846 Test [translate : 589] - Virtual and lab lab anything
20140320 00:08:23.846 Data [anything : 60] - anything in line
20140320 00:08:23.847 anyting [anything : 5] - anything in line
the output produced is:
Code:
var=84
589
60
5
I still question the need for storing a list of hundreds of thousands of values in a variable. In most cases it would be better to process the values one at a time as in:
Code:
awk -F '( : )|[]]' '!($2 in a) {a[$2]; print $2}' Input | while read num
do ... do whatever you want with $num ...
done
These 2 Users Gave Thanks to Don Cragun For This Post:
One of the senior administrators gave me a shell script to modify and it begins as follows:
if ] && ]
{more code follows}
Why the double square brackets? (10 Replies)
Hi
First apologies if this has been raised before.
I've got the following in a ksh script:
if ]
For some reason this does not work. But if I remove the double square brackets to:
if
This works.
I thought ksh supported the ]. Or is there more to it?
Thanks in advance. (3 Replies)
Hi,
I just came across an interesting shell script syntax like the one below:
] && (trap 'rm -rf ${WORK_DIR}/*.$$; echo "\n\nInterrupted !!\n\n"; exit 4' 1 2 3 15)
Can someone please explain the code snippet above?
The trap command bit is fine but ] && is the hazy part.
Generally we use an... (2 Replies)
Hello,
Can someone please explain to me the following line,
] && break
I do not understand why two test square brackets are used.
Thanks,
Shantanu
---------- Post updated at 03:38 PM ---------- Previous update was at 03:35 PM ----------
And, also why there's a $ before (echo $c |... (5 Replies)
Hi All,
I have a text file which looks like this:
computer programming
systems engineering
I want to get rid of these square brackets and also the text that is inside these brackets. So that my final text file looks like this:
computer programming
systems engineering
I am using... (3 Replies)
Hi frieds, I don't understand the difference between single square bracket and double square brackets in a IF condition.
Ex.
if ;
then
RETURNJOB=1
else
RETURNJOB=0
fi
It run, but this
if ];
then
RETURNJOB=1
else
RETURNJOB=0
fi (4 Replies)
I wanted to compare the value inside the Squre bracket after Colon ( : ) based on any value(seperated by or operator | ) inside the variable Thread and if match found then wnated to store in output file
Input file :
20140320 00:08:43.918 INO 35] - Corporate hub is
20140320 00:08:43.918... (2 Replies)
Hello all,
I have the following problem:
$ cat infile
this is spam and i need this too
this is spam and i need this too
$ perl -nwe '$_ =~ /]+ \]+)\]\]*\]? (\+)$/; print "$1 - $2\n";' infile
i need this - too
i need this - and i need this too
I am not sure how many occurences of... (13 Replies)
Hi All,
Hope you all are doing good. Yesterday in my project i came across a scenario which i can not guess why it was working in one region and why it was not in another region. Please find my issue below.
I am using AIX version 6.0 of UNIX in my project, in shell scripting i have the... (1 Reply)
Discussion started by: mad man
1 Replies
LEARN ABOUT DEBIAN
locale::currency
Locale::Currency(3perl) Perl Programmers Reference Guide Locale::Currency(3perl)NAME
Locale::Currency - standard codes for currency identification
SYNOPSIS
use Locale::Currency;
$curr = code2currency('usd'); # $curr gets 'US Dollar'
$code = currency2code('Euro'); # $code gets 'eur'
@codes = all_currency_codes();
@names = all_currency_names();
DESCRIPTION
The "Locale::Currency" module provides access to standard codes used for identifying currencies and funds, such as those defined in ISO
4217.
Most of the routines take an optional additional argument which specifies the code set to use. If not specified, the default ISO 4217
three-letter codes will be used.
SUPPORTED CODE SETS
There are several different code sets you can use for identifying currencies. The ones currently supported are:
alpha
This is a set of three-letter (uppercase) codes from ISO 4217 such as EUR for Euro.
Two of the codes specified by the standard (XTS which is reserved for testing purposes and XXX which is for transactions where no
currency is involved) are omitted.
This code set is identified with the symbol "LOCALE_CURR_ALPHA".
This is the default code set.
num This is the set of three-digit numeric codes from ISO 4217.
This code set is identified with the symbol "LOCALE_CURR_NUMERIC".
ROUTINES
code2currency ( CODE [,CODESET] )
currency2code ( NAME [,CODESET] )
currency_code2code ( CODE ,CODESET ,CODESET2 )
all_currency_codes ( [CODESET] )
all_currency_names ( [CODESET] )
Locale::Currency::rename_currency ( CODE ,NEW_NAME [,CODESET] )
Locale::Currency::add_currency ( CODE ,NAME [,CODESET] )
Locale::Currency::delete_currency ( CODE [,CODESET] )
Locale::Currency::add_currency_alias ( NAME ,NEW_NAME )
Locale::Currency::delete_currency_alias ( NAME )
Locale::Currency::rename_currency_code ( CODE ,NEW_CODE [,CODESET] )
Locale::Currency::add_currency_code_alias ( CODE ,NEW_CODE [,CODESET] )
Locale::Currency::delete_currency_code_alias ( CODE [,CODESET] )
These routines are all documented in the Locale::Codes man page.
SEE ALSO
Locale::Codes
Locale::Constants
http://www.iso.org/iso/support/currency_codes_list-1.htm
The ISO 4217 data.
AUTHOR
See Locale::Codes for full author history.
Currently maintained by Sullivan Beck (sbeck@cpan.org).
COPYRIGHT
Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
Copyright (c) 2001 Michael Hennecke
Copyright (c) 2001-2010 Neil Bowers
Copyright (c) 2010-2011 Sullivan Beck
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
perl v5.14.2 2011-09-26 Locale::Currency(3perl)