Skip to main content

Questions tagged [bash-array]

Filter by
Sorted by
Tagged with
2 votes
3 answers
404 views

Replace prefix string from lines in a file, and put into a bash array

In the file groupAfiles.txt are the lines: file14 file2 file4 file9 I need a way to convert them to remove file and add /dev/loop and put them all in one line with a space between them. /dev/loop14 /...
user447274's user avatar
2 votes
1 answer
204 views

Why does printing an array with @ using printf in bash only print the first element?

I have an array snapshots=(1 2 3 4) When I run printf "${snapshots[*]}\n" It prints as expected 1 2 3 4 But when I run printf "${snapshots[@]}\n" It just prints 1 without a ...
geckels1's user avatar
  • 163
0 votes
3 answers
104 views

bash array multiplication using bc

I am trying to multiply array values with values derived from the multiplication of a loop index using bc. #!/bin/bash n=10.0 bw=(1e-3 2.5e-4 1.11e-4 6.25e-5 4.0e-5 2.78e-5 2.04e-5 1.56e-5 1.29e-5 1....
csnl's user avatar
  • 35
3 votes
2 answers
1k 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
290 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
2k 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
248 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
586 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
  • 536
0 votes
3 answers
155 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
  • 536
1 vote
3 answers
2k 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,070
3 votes
2 answers
488 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
401 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
384 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
265 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
1k 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
716 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
109 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
  • 159
0 votes
2 answers
172 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
435 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
4k 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,969
-3 votes
1 answer
125 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
14k 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
2k 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
67 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
284 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
999 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,345
0 votes
3 answers
567 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
  • 163
0 votes
2 answers
977 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
276 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
2k 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
  • 369
0 votes
0 answers
17 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
997 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,924
0 votes
1 answer
283 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
  • 393
2 votes
1 answer
839 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
159 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
3 votes
3 answers
4k 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
  • 495
0 votes
1 answer
658 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
661 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
1k 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
1k 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
0 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
190 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
103 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
1k 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
721 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
359 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
  • 944
-1 votes
1 answer
329 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