Visit Our UNIX and Linux User Community


Shift array element


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Shift array element
# 1  
Old 05-22-2009
Shift array element

I want to delete and 0th element of array in shell scrpit and also shift all others to one level up.
# 2  
Old 05-22-2009
"unset" is what you are looking for.
Code:
unset arr[3]

My code sample follows:

Code:
#!/bin/bash

example[1]="one"
example[2]="two"
example[3]="three"
example[4]="four"
example[5]="five"

echo "A simple list, iterate over it to show elements"

for i in "${example[@]}"; do
        echo $i;
done;

echo "Unsetting 3rd element of array with: unset example[3]"
unset example[3]

echo
echo "Iterate over the modified list."

for i in "${example[@]}"; do
        echo $i;
done;

And then I tested it

Code:
-bash-3.00$ ./test.sh
A simple list, iterate over it to show elements
one
two
three
four
five
Unsetting 3rd element of array with: unset example[3]

Iterate over the modified list.
one
two
four
five

# 3  
Old 05-22-2009
Quote:
Originally Posted by darshakraut
I want to delete and 0th element of array in shell scrpit and also shift all others to one level up.

Code:
array=( a b c d e f g h i j k l ) ## define array

unset array[0]              ## remove element
array=( "${array[@]}" )     ## pack array

printf "%s\n" "${array[@]}" ## print array


Previous Thread | Next Thread
Test Your Knowledge in Computers #971
Difficulty: Medium
Linux device drivers and kernel extensions do not run directly in kernel space.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

If test array element multiplication

Ya, I know, who in this day and age is mirroring rootvg...? But yes, my shop does and I need to script checking for it. I also know I could just inverse the the logic and call the LV mirrored if the LPs and PPs were not equal. But I want to do the math in the if test and also know I could... (5 Replies)
Discussion started by: gtsonoma
5 Replies

2. UNIX for Advanced & Expert Users

Array Element

This question is for someone that's more familiar with Array Element. I need to know if the maximum array element that can be assigned is 1024 and if its so, Is there a workaround solution when the counter exceeded 1024? param_array="$param_nam" counter=$counter+1 #to avoid space... (3 Replies)
Discussion started by: cumeh1624
3 Replies

3. Shell Programming and Scripting

Not able to call an element from an array in ksh

Hi, I have: # Initialize variables #!/usr/bin/ksh FILENM=$1 INDEX=0 # read filename echo "You are working with the Config file: $FILENM" while read line do echo $line data=$line ((INDEX=INDEX+1)) done <"$FILENM" (3 Replies)
Discussion started by: Marc G
3 Replies

4. Shell Programming and Scripting

Multiplying array element

I am trying to take all the elements of an array and multiply them by 2, and then copy them to a new array. Here is what I have i=0 for true in DMGLIST do let DMGSIZES2="${DMGSIZES}"*2 let i++ done unset i echo ${DMGSIZES2} It does the calculation correctly for the first element,... (7 Replies)
Discussion started by: nextyoyoma
7 Replies

5. Emergency UNIX and Linux Support

Assigning zero to element of ksh array.

set -A matched #find referenced files. for i in ${file_names_html} do counter_j=0 for j in ${file_names_minus_index} do match=`cat $i | grep... (1 Reply)
Discussion started by: robin_simple
1 Replies

6. Shell Programming and Scripting

remove an element from array

I need to remove an element from the below array variable TABLENAME. #!/bin/ksh set -A TABLENAME "mirf roxar keke mirs" echo "the array is ${TABLENAME}" If i need to remove say keke and have the final TABLENAME as below, how this could be achieved. Pls throw some light. echo "Modified... (3 Replies)
Discussion started by: michaelrozar17
3 Replies

7. Shell Programming and Scripting

Help! Yet another check element in array Question

Greetings, DISCLAIMER: My shell scripting is rusty so my question may be borderline stupid. You've been warned. I need to create a script that a) lists the content of zip files in a directory and b) sends out an `exception` report. My ZIP files contain a control file (for load check). I want... (2 Replies)
Discussion started by: alan
2 Replies

8. Shell Programming and Scripting

HELP unsetting array element in loop

I have a loop and I need to be able to unset the array element that I am currently accessing in it. I was thinking of making a counter that increments with the loop and doing unset $dirs but if I do that I am not sure if the other members of the array would get shifted down in index (meaning that... (2 Replies)
Discussion started by: msf5042
2 Replies

9. Shell Programming and Scripting

Remove an element from an array in PERL

Hello guys, I have the following question. Consider the following code in PERL for($xeAnumber=0; $xeAnumber<@xeAnumber; $xeAnumber++) { if(@xeAnumber==@final_file) { @final_file=@xeTimeStamp; }... (3 Replies)
Discussion started by: chriss_58
3 Replies

10. Shell Programming and Scripting

accessing my first element of array

Hello everyonel, I have an array set like so num=4 read name arr=name I go through while loop to assign different values to different array element from 1 to 4. when I try to access the FIRST element of the array I get the last one first. Like if I say ${arr} it will show the last element... (4 Replies)
Discussion started by: afadaghi
4 Replies

Featured Tech Videos