Questions tagged [bash-array]
The bash-array tag has no usage guidance.
73
questions
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 ...
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" ...
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=("$...
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
...
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&...
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
...
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/...
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 ...
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 ...
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 ...
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*$...
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)
...
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 ...
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 '...
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 &...
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
...
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_$...
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 ...
-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 ...
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 ...
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[@]}"...
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&...
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 "\...
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/...
-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=("...
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 ...
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 ...
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 ...
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 ...
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&...
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&...
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
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 ...
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/
| ...
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[@]}"; ...
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?
...
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:
...
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 ...
-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 ...
-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 &&...
-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 "...
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 '' ...
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=...
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
...
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&...
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[...
-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, ...
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=( "...
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, ...
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 ...