Questions tagged [bash-array]

The tag has no usage guidance.

Filter by
Sorted by
Tagged with
1 vote
2 answers
129 views

How to extract and delete contents of a zip archive simultaneously?

I want to download and extract a large zip archive (>180 GB) containing multiple small files of a single file format onto an SSD, but I don't have enough storage for both the zip archive and the ...
Kumaresh Balaji Sundararajan's user avatar
1 vote
1 answer
34 views

Access values of associative array whose name is passed as argument inside bash function

I've some associative arrays in a bash script which I need to pass to a function in which I need to access the keys and values as well. declare -A gkp=( \ ["arm64"]="ARM-64-bit" ...
c10's user avatar
  • 13
3 votes
4 answers
1k views

How do I select an array to loop through from an array of arrays?

#!/usr/bin/bash ARGENT=("Nous devons économiser de l'argent." "Je dois économiser de l'argent.") BIENETRE=("Comment vas-tu?" "Tout va bien ?") aoarrs=("$...
John Smith's user avatar
2 votes
1 answer
120 views

What happens if I start a bash array with a big index?

I was trying to create a bash "multidimensional" array, I saw the ideas on using associative arrays, but I thought the simplest way to do it would be the following: for i in 0 1 2 do ...
Wellington de Almeida Silva's user avatar
1 vote
1 answer
149 views

Creating and appending to an array, mapfile vs arr+=(input) same thing or am I missing something?

Is there a case where mapfile has benefits over arr+=(input)? Simple examples mapfile array name, arr: mkdir {1,2,3} mapfile -t arr < <(ls) declare -p arr output: declare -a arr=([0])="1&...
Nickotine's user avatar
  • 398
0 votes
3 answers
86 views

Unable to append to array using parallel

I can't append to an array when I use parallel, no issues using a for loop. Parallel example: append() { arr+=("$1"); } export -f append parallel -j 0 append ::: {1..4} declare -p arr ...
Nickotine's user avatar
  • 398
1 vote
3 answers
682 views

Bash: converting a string with both spaces and quotes to an array

I have a function (not created by me) that outputs a series of strings inside of quotes: command <args> “Foo” “FooBar” “Foo Bar” “FooBar/Foo Bar” When I try to assign it to an array (Bash; BSD/...
Allan's user avatar
  • 1,010
3 votes
2 answers
142 views

Iterating over array elements with gnu parallel

I have an input file, names.txt, with the 1 word per line: apple abble aplle With my bash script I am trying to achieve the following output: apple and apple apple and abble apple and aplle ...
duda13's user avatar
  • 33
7 votes
1 answer
326 views

Bash 4.4 local readonly array variable scoping: bug?

The following script fails when run with bash 4.4.20(1) #!/bin/bash bar() { local args=("y") } foo() { local -r args=("x") bar } foo with error line 3: args: readonly ...
Dennis's user avatar
  • 73
0 votes
2 answers
239 views

Sort file array list in bash by date and bypass argument limit

So, I have a file array list in a bash shell, and I want to sort all the files in the array by the date modified, starting with the oldest being the first one in the array. However, I don't want to ...
Eduardo Perez's user avatar
1 vote
1 answer
146 views

Completed stumped by trying to use a decimal value in an array for Bash

Here is some simple test code. #!bin/bash cpm=(0 1 0.094) lv=1 attack=5 defense=9 stamina=16 echo $((cpm[lv])) mycpm=$((cpm[lv])) #mycpm=`echo "0.094" | bc -l` cq=`echo "$attack*$...
Tim50001's user avatar
0 votes
0 answers
31 views

How to find the user input time lies between which two time frame stored in array in bash script [duplicate]

let the given array is array=(12:45 01:30 02:02 02:55 03:55) so how to find the time let, 12:50 is lie between which two time frame(with index) is bash script array=(12:45 01:30 02:02 02:55 03:55) ...
Bhawishya Khanal's user avatar
4 votes
2 answers
745 views

How to slice an indexed array to obtain all elements between the first and last index?

I have an array tokens which contains tokens=( first one two three last ). How do I obtain the values ( one two three ) if I do not know how many numbers are in the array? I want to access everything ...
sriganesh's user avatar
  • 101
1 vote
1 answer
364 views

How to separate long string into a string array with IFS and read, or any other method

I have a long line that comes as output from a git command: a=$(git submodule foreach git status). It looks like this: a = "Entering 'Dir1/Subdir' On branch master Your branch is up to date with '...
Zaida's user avatar
  • 133
0 votes
2 answers
68 views

Bash - How to make a function "delete only non-matching array from user inputs"

Suppose, I have 1 file in a folder named B.py Using this script, I make 3 files within that folder. The files are A.py B.py C.py. read -r -p "Enter the filenames: " -a arr for filenames in &...
Mega Bang's user avatar
0 votes
2 answers
139 views

grep results with spaces and special chars

I am trying to grab results from lshw and add them to a a bash array so I can create a new string. I am using lshw -class disk |egrep -A 7 .'-d' |grep 'product' |cut -b 17- the output looks like this ...
xtree's user avatar
  • 1
0 votes
2 answers
335 views

Bash fails to work with dynamic array name (but it understands it)

I'm doing a script in bash where I need to declare arrays inside loops, so I made it like this: variable=suffix declare -a prefix_$variable='(item1 item2)' then I should be able to use "prefix_$...
user2934303's user avatar
2 votes
5 answers
3k views

echoing value in same indexes of 2 arrays simulataneously

I have 2 arrays to prcoess in bash script simultaneously. First array contains sort of lables. Second array contains values, as under LABELS=(label1 label2 label3 labe4 ) VALUES=(91 18 7 4) What's ...
Sollosa's user avatar
  • 1,899
-3 votes
1 answer
119 views

Difference between two array printing methods in bash [duplicate]

I have an array declared in my script. NAME[0]=Deepak NAME[1]=Renuka NAME[2]=Joe NAME[3]=Alex NAME[4]=Amir echo "All Index: ${NAME[*]}" echo "All Index: ${NAME[@]}" There are two ...
Tom's user avatar
  • 5
0 votes
0 answers
28 views

How do I get this code to evaluate all arms of if-else? Why does Bash seem to interpret the characters that I input as integers? [duplicate]

The last elif arm does not get executed: #!/usr/bin/bash searches=("feet" "axilas" "lactant") length=${#searches[@]} searchFunction() { echo "Enter the ...
John Smith's user avatar
5 votes
2 answers
11k views

How to pass an array as function argument but with other extra parameters?

The following post solution works as expected: How to pass an array as function argument? Therefore - from his answer: function copyFiles() { arr=("$@") for i in "${arr[@]}"...
Manuel Jordan's user avatar
3 votes
1 answer
1k views

What is the difference between ${array[*]} and ${array[@]}? When use each one over the other? [duplicate]

With the following code: #! /bin/bash declare -a arr=("element1" "element2" "element3&...
Manuel Jordan's user avatar
2 votes
1 answer
53 views

Why isn't the `else` arm executed in this Bash script (for loop through an array)?

The following code is meant to look for subdirectories in ~/Downloads. I run it with . ./script.sh. It will find them even when the user submits an incomplete name. #!/usr/bin/bash echo -e "\...
John Smith's user avatar
0 votes
1 answer
183 views

Matching a variable in order to pull value from an array

The script will echo the different values stored in an array based on user input. However, the output is not correct and the wrong value is echoed. AA_P=/root/run_Scripts/AA_P_run.sh AA_S=/root/...
Gee_k's user avatar
  • 27
-1 votes
1 answer
811 views

How to work with arrays of space separated strings in shell script?

I with to monitor if my access points pingable and store results into 0-1 string I wrote a script but it works wrong #/bin/bash access_points=("tplink2" "redmi1") #results=("...
Dims's user avatar
  • 3,225
0 votes
3 answers
358 views

Why a bash array remains empty if I pipe the result of a for loop, used to populate it, into zenity --progress?

I have an array with some data: array1=( AAA BBB CCC DDD ) I want to populate an array of results from calling a certain API with the data in array1 and at the same time I want to show the progress ...
dentex's user avatar
  • 153
0 votes
2 answers
901 views

For-loop - appending to arrays with iterator in the array name

I have the following problem. I have an array arr with some values. I want to sort each value into a set of different - and already declared - arrays earr$j, i.e. arr[0] into earr1, arr[1] into earr2 ...
UserAthos's user avatar
2 votes
0 answers
200 views

for loop and appending over list of arrays

I am new to Bash scripting and presently find myself dealing with a small problem in working with for loops, arrays and variable assignment/substitution which I do not know how to solve. Since I am ...
UserAthos's user avatar
1 vote
2 answers
979 views

Array Declaration: Double Quotes & Parentheses

Perhaps this is a stupid question but two hours on Google hasn't turned up anything on point. Simply, does a difference exist in Bash between: X=" a b c " and X=( a b c ) The former ...
ebsf's user avatar
  • 291
0 votes
0 answers
15 views

bash scripting problem creating array [duplicate]

I'm trying to make an array in a bash script. I keep running into a problem even though I feel like I've followed tutorials correctly. #!/bin/bash myArray=("cat" "dog" "mouse&...
Brad's user avatar
  • 1
4 votes
2 answers
846 views

Bash's read builtin errors on a string-based timeout option specification but not an array-based one. Why?

In reading through the source to fff to learn more about Bash programming, I saw a timeout option passed to read as an array here: read "${read_flags[@]}" -srn 1 && key "$REPLY&...
qmacro's user avatar
  • 143
2 votes
1 answer
2k views

Bash - mix/merge/combine two different arrays with same length

I have two different arrays with the same length: s=(c d e f g a b c) f=(1 2 3 1 2 3 4 5) how can I mix/merge/combine this two arrays, so I would get this output: c1 d2 e3 f1 g2 a3 b4 c5
nath's user avatar
  • 5,510
0 votes
1 answer
118 views

Adding options using bash arrays

I am using a bash script to call rsync commands. Have decided to collect some options in an array called oser. The idea is to look at what's different in the two invocations and put that into the ...
Pietru's user avatar
  • 391
2 votes
1 answer
576 views

Can't access elements of an array built from readarray

I'm trying to build a basic REPL in bash. The script dynamically populates a list of files in a directory for the user to run. File space: | |\ scripts/ || script1.sh || script2.sh | \ shell/ | ...
user3116064's user avatar
1 vote
2 answers
146 views

Getting an array into a parallel bash script

I'm having a bit of difficulty understanding parallel procedures. Atm I'm trying to mass wipe hard drives, so have created a script, however it won't run in parallel. for i in "${!wipe[@]}"; ...
Earthwormben's user avatar
2 votes
3 answers
3k views

How do I split a string by a delimiter resulting in an unknown number of parts and how can I collect the results in an array?

I need to process some strings containing paths. How do I split such a string by / as delimiter resulting in an unknown number of path-parts and how do I, in the end, extract the resulting path-parts? ...
von spotz's user avatar
  • 405
0 votes
1 answer
479 views

How to both get the original and reverse order of an array?

So, Let's say i have an array arr, with two element in it: read -a arr <<< "$@" where i would then either use it in a function or script and input two string or element like so: ...
Nordine Lotfi's user avatar
0 votes
2 answers
506 views

Concatenating string to form an existing variable name and working within array enclosure format

#!/bin/bash mat_1=(ServerAB ServerFR ServerPE ServerAM ServerHU) st="mat_1"; indirect_var='${'${st}'[@]}' #(Please, see the "--Desired Ouput Section--" in comments) #----- What ...
dcubaz's user avatar
  • 23
-1 votes
4 answers
738 views

The sum of elements in an array

I'm new to bash script learning and I'm quiet confused how to do this code. array1=(23 34 23 12 11 32 12 12 12 21) array2=(12 13 14 43 42 23 32 11 10 22) These are the two arrays, and I need to get ...
Grace's user avatar
  • 1
-1 votes
1 answer
947 views

Using shell arrays to read every N lines in parallel of a file

So, i already know how to successfully read every N lines in parallel, and run a command on each of those lines: while read -r i && read -r a && read -r b && read -r c &&...
Nordine Lotfi's user avatar
-1 votes
2 answers
2k views

Shell script with a for loop and an “array”

How can I use this shell script with for loop and an array. I would like to call create condition for quality gate creation of sonarqube with a for loop. Example: #!/bin/bash --login echo "...
user1628's user avatar
0 votes
0 answers
127 views

Unexpected behavior during index assignment in a Bash array [duplicate]

I'm having trouble assigning values to a specific bash index, but apparently only when the index variable is set using a while read loop. Taking this code as a test example: #!/bin/bash read -d '' ...
steinocaro's user avatar
1 vote
0 answers
99 views

bash transfer multiple files in seq and uniq to sub folders

I have thousands or more than thousands of files like A20200727.2015+0200-2030+0200_SubNetwork=ppp,MeContext=xxx23,celltracefile_DUL1_3.bin.gz A20200727.2015+0200-2030+0200_SubNetwork=ppp,MeContext=...
Indranil's user avatar
1 vote
2 answers
744 views

Why isn't $ARRAY+=$var working for me?

I am trying to add an element to a bash array. I looked at this question and tried to follow its advice. This is my code: selected_projects=() for project_num in ${project_numbers[@]}; do ...
chama's user avatar
  • 113
0 votes
2 answers
580 views

bash scripting key value array in "etc/passwd" file

I want my /etc/passwd file to be as an array like this [user_id] => [home_directory] e.g. [0] => "/root" [1000] => "/home/user1" [1001] => "/home/user2&...
Mahdi's user avatar
  • 19
1 vote
2 answers
279 views

Why can't I convert a string variable into an array when some items include spaces?

For example, in the snippet below, (how) is it possible to make array2 identical to array1 while still using a str variable? ~$ { str='a "b c" d'; array1=(a "b c" d); array2=( $str ) echo "${array1[...
glarry's user avatar
  • 904
-1 votes
1 answer
279 views

percent per value from array, message if greater than 80%

I am trying to get an error message if one of the disks is filed more than 80%. So we have two arrays which have the data of disk partitions (they can have 3 partitions like in this example or more, ...
trustbyte's user avatar
0 votes
1 answer
322 views

Expanding a variable inside quotes

I am trying to get the files from S3 bucket,starting with certain prefix. To do so am using aws cli command in the bash script. Below is my code #!/bin/bash FILESIZE=$(mktemp) declare -a files=( "...
clarie's user avatar
  • 95
0 votes
1 answer
491 views

Pass Array Variable to MATLAB Function in Bash

Aim I am using multiple text files to set variables and array variables. These are the input arguments to a MATLAB function, that iteratively creates url download strings based on these variables, ...
liaml's user avatar
  • 3
0 votes
2 answers
343 views

checking if a rpm package exists in an array

I am trying to find out if certain RPM packages exists in an array. if any of the package is missing it will exit with the message "Package doesnt exist" .Here is my code #!/bin/bash echo "Checking ...
achak01's user avatar
  • 21