Sponsored Content
Top Forums Shell Programming and Scripting Perl delete an element from array Post 302103326 by cbkihong on Wednesday 17th of January 2007 08:54:32 PM
Old 01-17-2007
I don't understand what you are trying to do, actually.

Just bear in mind:

- To really delete an item from an array, such as (1, 2, 3) -> (1, 3), use splice().
- delete() simply sets the elements as "undef". Unless the elements happen to appear at the end of the array, they will not be removed, and is usually not what you want. delete() is usually more meaningful for hashes to remove hash items, NOT array items.

You can look at this illustration:

Code:
[bernardchan@bernardchan ~]$ perl -MData::Dumper -w -e '@a = (1,2,3); delete $a[0]; print Dumper [@a]'
$VAR1 = [
          undef,
          2,
          3
        ];
[bernardchan@bernardchan ~]$ perl -MData::Dumper -w -e '@a = (1,2,3); splice(@a, 0, 1); print Dumper [@a]'
$VAR1 = [
          2,
          3
        ];

As I'm not sure what you exactly would like to do, you may need to figure out the problem yourself. You may read the manpage for delete() for the complete details.
 

10 More Discussions You Might Find Interesting

1. 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

2. 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

3. Shell Programming and Scripting

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 Replies)
Discussion started by: darshakraut
2 Replies

4. 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

5. Shell Programming and Scripting

Perl: One action if an element doesn't exist in array

Hello, I want to run one (not multiple) action if an element doesn't exist in array. for example: @array = (1..10); foreach $el (@array) { if ($el != 11) { print "number not found\n"; } } the output of this simple script: number not found (3 Replies)
Discussion started by: ahmed_zaher
3 Replies

6. Shell Programming and Scripting

previous element in the array perl

Hi, How to get previous/next element in the array perl Example @queue = (1, 2 ,3 , 4); I want to get value of 1 and 2, or, 2 and 3, or 3 and 4...etc and compare to value which one is greater to do that I need to get previous and next element of array ? (1 Reply)
Discussion started by: guidely
1 Replies

7. Shell Programming and Scripting

Delete lines in an array Using perl

im having an array @check which contains text ..i want to open the array and i have to delete lines starting from a word called "check1" till "check2" for eg:- check1 Use descriptive titles when posting. For example, do not post questions with subjects like "Help Me!", "Urgent!!" or "Doubt".... (0 Replies)
Discussion started by: rajkrishna89
0 Replies

8. Programming

How to delete a duplicate element from below array.

Hello forum , Please solve the below queery. A sorted array which has repated elements. A = {1,2,3,3,4,5,5,5,6,9,9} i want to delete the duplicate elements and to genrate a new array. i need the array sholud be like this A = {1,2,3,4,5,6,9}. Please write the piece of code... (4 Replies)
Discussion started by: workforsiva
4 Replies

9. Shell Programming and Scripting

Perl: How to check whether my array contains element x

Hi All, I am new to perl I am stuck in simple problem I need your help I want to define a subroutine. sub check_if_entity_exists(@array_to_be_checked,$entityName) I have array as http-listener-1 http-listener-2 http-listener-3 http-listener-4 If i send http-listener-3 my... (1 Reply)
Discussion started by: javaholics
1 Replies

10. 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
DBVIEW(1)							Database Management							 DBVIEW(1)

NAME
dbview - View dBase III files SYNOPSIS
dbview [-b|--browse] [-d delim| --delimiter delim] [-D|--deleted] [-e|--description] [-h|--help] [-i|--info] [-o|--omit] [-v|--version] [-r|--reserve] [-t|--trim] dbfile DESCRIPTION
Dbview is a little tool that will display dBase III files. You can also use it to convert your old .dbf files for further use with Unix. It should also work with dBase IV files, but this is mostly untested. By default dbview displays the contents of a dBase III or IV database file. This is be done by displaying both the name of the field itself and its value. At the end of every record a newline is appended. OPTIONS
If no option given dbview only displays the database in its most friendly way. --browse, -b switches into browse mode. Using this mode no fieldnames will be displayed, instead every record will displayed in one line using a delimiter to separate fields. --delimiter, -d delimiter The default delimiter in browse mode is the colon sign ``:''. This parameter overrides it. This can be useful especially if you plan to examine the output with scripts. --deleted, -D displays deleted records as well as the delete state in each record in the database. --description, -e displays the field description of the database. --help, -h displays a complete (or short) help screen. --info, -i displays some (partially technical) information about the database like number of records and length of each record. --omit, -o omits displaying the whole database. Using this parameter can be useful if you're only interested in the structure. --reserve, -r Normally fieldnames are converted into a more friendly format. They are stored in capital letters, but that looks like shouting. This parameter supresses the conversion. --trim, -t When this option is specified, leading and trailing spaces are omitted. This might be useful when in browse mode. --version, -v displays version and exits. NOTES
As dBase is DOS, umlauts are stored using a different code table (namely ASCII) than most modern unices (namely ANSI). If you encounter such a file, I would recommend piping the output through recode(1) with ibmpc:latin1 as it's argument. If you want to examine the output generated by the browse mode, just take cut(1) and set its delimiter to the used delimiter or take awk(1) and continue. COPYRIGHT
Dbview is free software. It is based on routines from unknown source that I found on nic.funet.fi in /pub/msdos/languages/c as dbase.c. The file contained the following notice: These functions are provided by Valour Software as a gift. I have modified and included this file and wrote a skeleton around it. All together provides a powerful tool for dBase III and IV database manipulation under Unix. I mainly have written this program, because I've got several dbase files containing important information for me. As I won't go running DOS everytime I need some of the stored information, I had to find a viewer that runs unter Unix, resp. Linux, but unfortunately didn't find one. So it was my turn. This package as a whole is published under the GNU Public License, which is a great invention. It wasn't the intention to write a freaking viewer and reinvent the wheel again. Instead dbview is intend to be used in conjunction with your favourite unix text utilities like cut, recode and more. Martin Schulze Infodrom Oldenburg joey@infodrom.north.de SEE ALSO
recode(1), more(1), awk(1), cut(1). Unix November 20th, 2006 DBVIEW(1)
All times are GMT -4. The time now is 12:32 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy