Hash Table like implementation in unix


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Hash Table like implementation in unix
# 1  
Old 05-17-2011
CPU & Memory Hash Table like implementation in unix

Hi all,

I just downloaded this example from the net. I was looking around for a hash table like implementation in unix when I came across this.

Code:
ARRAY=( "cow:moo"
        "dinosaur:roar"
        "bird:chirp"
        "bash:rock" )

for animal in ${ARRAY[@]} ; do
    KEY=${animal%%:*}
    VALUE=${animal##*:}
    printf "%s likes to %s.\n" $KEY $VALUE
done

Can anyone please help me how does the ${animal%%:*} match to cow , is it a regular expression ?

Thanks in advance ...

Last edited by pludi; 05-17-2011 at 03:49 PM..
# 2  
Old 05-17-2011
No, just a ksh substring feature, using file globbing wild cards with meta characters '*', '?', '[...]' but not '[^...]', not regex. It says get the value of animal and chew the end aggressively so as to find the first ':' with the '*'. The '%' means chew on right end, mnemonic: get your percent in the end. # means pound on the nose, chew on the left end. Double ##/%% takes the * from lazy to aggressive. In these cases, aggressive was unnecessary.
This User Gave Thanks to DGPickett For This Post:
# 3  
Old 05-17-2011
Thanks a lot DGPickett for the response,

Actually I am using bash ( /bin/sh ) , so does this work in bash too ...
# 4  
Old 05-18-2011
Quote:
Originally Posted by anindyabecs
Actually I am using bash ( /bin/sh )
bash most definitely is not /bin/sh except by coincidence on some systems. If you're using bash features, use #!/bin/bash, not #!/bin/sh. On some systems this difference is vital.
This User Gave Thanks to Corona688 For This Post:
# 5  
Old 05-18-2011
Hi Corona688,

Thanks for your reply. In the system that I use we have /bin/sh pointing to bash.

[ais@nm11of05 bin]$ ls -l sh
lrwxrwxrwx 1 root root 4 Jun 3 2010 sh -> bash
[ais@nm11of05 bin]$ pwd
/bin
# 6  
Old 05-19-2011
Careful, bash may act somewhat like sh when sh is the called program name.
# 7  
Old 05-19-2011
It's just nonsense to link stuff like that.
System wide shell change just doesnt feel right Smilie

You have magic cookies, profiles etc. to setup shell of your choice.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Need to print hash of hash in table format

Hi, I have a hash of hash where it has name, activities and count i have data like this - $result->{$name}->{$activities} = $value; content of that are - name - robert tom cat peter activities - running, eating, sleeping , drinking, work i need to print output as below ... (3 Replies)
Discussion started by: asak
3 Replies

2. Programming

Hash Table

I was looking at this script and was wondering if anyone can explain what this script does and how does it work. Thank you for any help. State* lookup(char* prefix, int create) { int i, h; State *sp = NULL ; h = hash(prefix); for (sp = statetab; sp != NULL; sp... (14 Replies)
Discussion started by: totoro125
14 Replies

3. Shell Programming and Scripting

Return a hash table from a sub routine

hello, i am new to scripting and would like to know how to return a hash table from a sub routine. i tried the following, my %hash_function = (); hash_function = &return_hash(); sub return_hash { my %hash = (); ///populate the hash return %hash; } but it dosent seem to... (1 Reply)
Discussion started by: hemalathak10
1 Replies

4. Programming

Hash table

Hi, I hope someone can help me with the following prob.. I need to implement a hashtable whose KEYs are strings and VLAUEs are again hashtables. ie key - is a string and value -is another hashtable . So.... how am I supposed to be implementing my nested hashtable? Thanks in advance (1 Reply)
Discussion started by: andrew.paul
1 Replies

5. UNIX for Advanced & Expert Users

distributed hash table operations(GET,PUT,TRANSFER) implementation

Hi, i want to implement hash table (put, get and transfer operations) using c in unix. so give some nice infromation on how to write my code. (1 Reply)
Discussion started by: kaleab
1 Replies

6. Shell Programming and Scripting

how to import external HASH table in PERL???

hello, I am creating a HASH table using file1.pl :- I want to retrieve the content of the hash table created above from another file named file2.pl :- The problem is that if I separate like this into 2 files.Then it says that HASH table is not created.So can you please tell me how to... (2 Replies)
Discussion started by: nsharath
2 Replies

7. UNIX for Dummies Questions & Answers

nested hash table

Hi, I have a nested hash table say for example as follows: %coins = ( 1 => { "Quarter"=>25, "Dime"=>10, "Nickel"=>5, }, 2 => { "asd"=>34, "qwe"=>45, ... (0 Replies)
Discussion started by: arthi
0 Replies

8. Programming

Creating a Hash Table

Dear Friends, I want to create a hash table using the standard Glib header (if possible) so that I can store a structure and keep the hash key(search key) based on a string. Any example code would be great since I am not able to get the main idea. best regards Skull (4 Replies)
Discussion started by: callmetheskull
4 Replies

9. Programming

hash table implementations in C Language

Hello List, Iam searching for a solution where i can use hash based searching . In Detail , I have linked list which will be dynamically increasing . I need a best searching mechanisim such a way that it can take only one itereation . Right now iam using linear search which is taking... (11 Replies)
Discussion started by: vlrk
11 Replies

10. UNIX for Advanced & Expert Users

Creating a hash table using shell script

Hi, For one of my programs, I need to have a hashtable as in Perl. Unfortunately shell doesnt provide any variable like hash. Is there anyway/trick, I could implement a hash in shell (using shell scripts/sed/awk). JP (2 Replies)
Discussion started by: jyotipg
2 Replies
Login or Register to Ask a Question