Sponsored Content
Top Forums Shell Programming and Scripting Using arrays outside the loop Post 302304791 by fpmurphy on Tuesday 7th of April 2009 09:53:36 AM
Old 04-07-2009
Your problem is the space after the equals sign on the line "town[$n]= $t1"

Code:
#!/bin/ksh93

set -A town_name india pakistan srilanka india
set -A town
m=0
n=0

while [ $m -lt ${#town_name[*]} ]
do
   t1=`echo ${town_name[$m]}`
   town[$n]=$t1
   echo ${town[$n]}
   n=$((n+1)) 
   m=$((m+1))
done

t2=`echo ${town[3]}`
echo $t2

You could also write the loop more compactly as
Code:
while (( m < ${#town_name[*]} ))
do
   town[$n]=${town_name[$m]}
   echo ${town[$n]}
   ((n++))
   ((m++))
done

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Nested Loop to Echo Multiple Arrays

I have three arrays which hold three elements each. I have a fourth array which contains the names of those three arrays. I'm having difficulty creating a nested loop that can loop through each array and echo their values. script #!/bin/ksh # array of locations (usa, london, australia)... (1 Reply)
Discussion started by: yongho
1 Replies

2. Shell Programming and Scripting

How to access the elements of two arrays with a single loop using the inbuilt index.

Hi all, I wanted to access two arrays (of same size) using one for loop. Ex: #!/bin/bash declare -a num declare -a words num=(1 2 3 4 5 6 7) words=(one two three four five six seven) for num in ${num} do echo ":$num: :${words}:" done Required Output: :1: :one: (11 Replies)
Discussion started by: 14341
11 Replies

3. Programming

Perl arrays and loop through array

Hi All I need to get <STDIN> from a user. the <STDIN> is a range of number delimited by "," (comma) and can be with range delimited by "-". Example: 1,2,3,4-9,12,15,34-36,70 Now I need to get this from the user and go on each number and "Do something"... but when trying to do this as above... (2 Replies)
Discussion started by: RedGrinGo
2 Replies

4. Shell Programming and Scripting

does bash have arrays that i can push into and run a for loop against?

Hi I have a bash script where i need to push some values into an array and when finished, run a for loop against that array for example myfile sausages|meat beef| meat carrot| veg ... ... for LINE in `cat myfile`; do FOOD=`echo $LINE | cut -d\| -f1` TYPE=`echo $LINE | cut... (4 Replies)
Discussion started by: rethink
4 Replies

5. Shell Programming and Scripting

Iterating through two arrays in a single loop

Hey everyone. Is it possible to use two arrays in a loop? Basically what I am trying to do is iterate through the elements in an array, and, based on a condition, use the current position in the array to point to that index in the array. Here's the loop structure I'm looking for: ... (1 Reply)
Discussion started by: msarro
1 Replies

6. Shell Programming and Scripting

Problem with arrays and loop

Hello , im sorry for my english . im trying to create a dynamic menu that will display if the interface is ACTIVE OR STOPPED/FAILED for some reason i cant get it to work properly start_interface_func() { i=0 for interface_chk in 11 71 73 72 12 47 48 49 50 20 23 24 25 46 21 22 27 28... (5 Replies)
Discussion started by: visiown
5 Replies

7. Shell Programming and Scripting

Loop through array of arrays of string with spaces

Hi I'm trying to loop through an array that contains other arrays and these arrays consist of strings with spaces. The problem is that I can't seem to preserve the spacing in the string. The string with spaces are either divided into multiple items if I change IFS to \n or all the elements of... (4 Replies)
Discussion started by: kidmanos
4 Replies

8. Shell Programming and Scripting

Bash for loop with arrays second variable?

I am fairly new to bash and am not sure how to resolve this: I have a series of geographical long/lat points eg. 50/-30 listed on separate lines in a file called junk2. I have input these into an array and am then using that array in a for loop. Towards the end of the loop I create a file called... (4 Replies)
Discussion started by: lily-anne
4 Replies

9. Shell Programming and Scripting

Loop over multiple arrays

Hi All I need really really help with this :- I have two files ( File1 , File 2) both files are output of two different scripts. File1 usually has a list of names ( sometimes 3 names sometimes 5 sometimes more , depends about the output of the script) File2 usually has a list of numbers... (2 Replies)
Discussion started by: samsan
2 Replies

10. Shell Programming and Scripting

Multiple arrays in variable using for loop

Hi, I'm trying to get the number of files inside same kind of folders on each disks and assigning each values in to a variable named with same folder and disk name so that it'll be easy for me to identify each time.But somehow I'm not able to assign those values in that specific name variable... (1 Reply)
Discussion started by: ratheeshp
1 Replies
callerid.conf(5)					    Linux System Administration 					  callerid.conf(5)

NAME
/etc/isdn/callerid.conf - config file for isdnlog numbers and scripts FORMAT
This file has the format described in isdnformat(5). It must be owned by root, and only root may have write access. Every user can create his private telephone book as ~/.isdn with the same file format. VARIABLES SECTION
Like in isdn.conf, this file has an optional [VARIABLES] section. All variable names must be uppercase. Warning: variables in callerid.conf will override variables in isdn.conf, and variables in ~/.isdn will override variables in both files. First all variables are read, then they are substituted, so a variable defined in ~/.isdn can be used in isdn.conf. This might be a security hole. However, if programs are to be run as root, these files (and the program) cannot be writeable for non-root users. Using variables: if a reference to a non existing variable is used, isdnrep and isdnlog will give warning messages, and use the variable name (e.g if $FRED isn't set, isdnlog will use "$FRED"). The dollar sign can be backslashed if a real dollar sign is needed instead of variable substitution (e.g. $PATH will be "$PATH"). NUMBER and MSN In [NUMBER] sections, you can supply information for the outer world, in [MSN] sections; you can supply information about your msns. The format is the same: NUMBER=xxxx Set the telephone number. This should be your msn or the telephone number with area code (with or without areprefix, countrycode and countryprefix) SI=x Service indicator. Isdnlog knows these service indicators: 1 speech (telephone, fax g3, modem etc.) 2 restricted digital information 3 unrestricted digital information with tones/announcements 4 video 7 unrestricted digital information (hdlc, x.75 etc.) Alias=xxxx Supply a name as alias (e.g. ALIAS=Fred's Number) ZONE=xxx Only useful with remote numbers: billing zone for connections to this number: 0 internal connection in your s0 bus (no charge) 1 city area 2 region 50 3 region 200 4 far region 5 the same as 1 INTERFACE=xxx Isdn network interface. This information is required with the "-hx" / hangup="value" option. START You can define a subsection here. The whole section is ignored unless you gave the "-S" / start=yes option. Each subsection should have the name [FLAG]. It may hold these values: FLAGS=x|y|z Combine these flags (with or without the pipe "|" char; with is preferred) to get the combination you want: Part 1: Incoming and Outgoing I Incoming call O Outgoing call Part 2: Signals from isdn system C Connect (can be used with interval, see below) B Busy E Error R Ring (can be used with interval, see below) A AOCD (advice of charge signal) H Hangup Part 3: Modifiers L Start the program again and again every time it terminates. U Start the program only once within a interval. Without this, several instances of a program can run in parallel. (Interval required.) K Kill program at the end of the interval. USER=xxx Isdnlog will not run programs as root, and will switch to a different user id for security. You must give the name or uid of the user isdnlog has to use here. GROUP=xxx Isdnlog will not run programs as group root, and will switch to a different group id for security. You must give the name or gid of the groups isdnlog has to use here. TIME=xx Restrict this flag to a special time. Pleas read isdntime(5). INTERVAL=xx With connect (C) or ring (R) flag you can specify an interval, so isdnlog will start the program after every interval. The interval is in seconds and should be at least 2 seconds. If the flags do not include C or R, this option is ignored. PROGRAM=xxx The program you want to start, with the required arguments. You may use the following special tokens: $1 flags that caused execution, e.g. "IR", "OC". There are always exactly two characters. $2 Caller number (complete with area code). $3 Called number (complete with area code). $4 Time the connection started. Example: "Wed May 28 23:07:44 1997". Contains "?" if there is no connection yet (e.g. still at RING phase). $5 Duration of connection up to now (in seconds). $6 Time the connection ended. Same format as $4. $7 Number of input bytes. $8 Number of output bytes. $9 Input bytes per second. $10 Output bytes per second. $11 Service indicator. $12 Charges. $13 Caller country code. $14 Called country code. $15 Caller area code. $16 Called area code. $17 Caller town (derived from area code). $18 Called town $19 Caller alias. $20 Called alias. Note: within a string you must use ${1} ${2} ... FILES
/etc/isdn/callerid.conf This file. ~/.isdn Per user telephone book. SEE ALSO
isdnlog(8) isdnformat(5) isdntime(5) AUTHOR
This manual page was written by Andreas Jellinghaus <aj@dungeon.inka.de>, for Debian GNU/Linux and isdn4linux. ISDN 4 Linux 3.13 2000/09/15 callerid.conf(5)
All times are GMT -4. The time now is 12:57 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy