OK, this is what you have to do in order to understand how this code works:
1. Execute:
It will convert each line of the "country-code" to an "if-statements" in awk-language that instructs awk that:
if the forth-field (of the read-in line) starts with the "number" then, print the entire line followed by the "name".
Thus, if you run awk on the phone-lines.txt file with those generated "if-statements" as the executing-commands on the read-in lines, the result will be "addition of the appropriate Country-City-Name to the end of the line, based on the starting number in the forth-field of the read-in line".
You can see it for yourself, by executing:
Now, we have to add the "Second Country-City-Name to the end of the line, based on the starting number in the fifth-field of the read-in line".
We do this by piping the output of the above-command to another awk who has no phonelines.txt as its file-parameter (so, it will be forced to read the output of the previous awk in the pipe) and, as its set of "if-statements", the same sed is used but this time it is generating "$5~/^ ..." instead of "$4~/^ ..." to instruct (the second) awk that:
if the fifth-field (of the read-in line) starts with the "number" then, print the entire line followed by the "name".
Now, as for the speed, I'm afraid I don't have a 500000 line phonelines.txt file and more than that, it depends on the computer on which you're running this commands. But, one thing that I am very sure of is that both sed and awk are very fast in what they do.
As for the description of how the sed is generating the "if-statements", I would refer you to the description of "Regular Expression" either on the internet onin man-pages.
Dear all
I have group of input lines which look like this
These input lines is placed in a file named phonelines.txt and there is a script which match $4 and $5 with country codes placed in another file named country-codes.txt and its contents is :
Italy 39
Libyana 21892
Thuraya... (12 Replies)
Hello folks,
I have list of ips like
1.1.1.1
2.2.2.2
3.3.3.3
4.4.4.4
whois 1.1.1.1 |grep -E 'country|Country'
it show country=US or whatever.
so i have number of ips in text file, how i can use above script to automate output like
1.1.1.1 US
2.2.2.2 CA
3.3.3.3 FR (3 Replies)
Hi there,
I'm fairly new to bash scripting and already having some troubles. I'm making a script that can print some series of strings in colors based in the information of a file, for simplicity let's say it only does:
#!/bin/bash
printf "\eWhen you execute this in the command line it... (1 Reply)
Here is my daily stupid question:
How can I tell a script to only execute if the other scripts exits successfully?
So "script A" executes and it executes successfully (0),then "script B" will run
or else
"script A "executes and it exits unsucessfully (1) then "script B" will read return... (6 Replies)
Dear folks.
I have list of ip address from different country, i would like check from script this ip address belong to which country, please suggest any command, i have more than 200 ip address so i need to do it via script. Script will show me country code and its City if possible?
... (0 Replies)
Discussion started by: learnbash
0 Replies
6. Forum Support Area for Unregistered Users & Account Problems
Hi, I'm come from Vietnam and want to join to Unix forum just because I like Unix programming and want to learning more.
My IP is allocate by DHCP server so it is dynamic.
Here is my desired username and my email:
Username: lucasdo
Email: rennersstar@gmail.com
Thank you very much for... (0 Replies)