Sponsored Content
Top Forums Shell Programming and Scripting Array reference - bad substitution Post 302291851 by swankgd on Thursday 26th of February 2009 12:34:00 PM
Old 02-26-2009
Array reference - bad substitution

I've created a series of arrays named as follows:

row1[]
row2[]
row3[]
.
.
.
row10[]

Each has 4 elements.

I'm trying to echo the array elements out in a for loop. Here's what I have:
Code:
for ((i=1;i<=10;i++))
do
  for ((j=1;j<=4;j++)) 
  do
    eval out=${row`echo $i`[$j]}
    echo -n $out
  done
  echo
done

I get the bad substitution error on the eval out= assignment. Oddly, just a few lines before that, almost the exact same syntax works fine for assigning the values to the arrays ( eval row`echo $i`[$j]=......)

Any help is much appreciated.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Bad Substitution

Need Help... I am getting a bad substitution error on my script on a Solaris Server. However the script has been proven to work on HPUX and Solaris servers... #!/usr/bin/sh # # Set the location of the tzupdater.jar file # JAR=/tmp/tzupdater.jar # <<<<< UPDATE THIS LINE... (3 Replies)
Discussion started by: D_Redd74
3 Replies

2. Shell Programming and Scripting

Unix Variable Reference and Substitution

I can't seem to make what appears to be a simple substitution. I want to define a list of systems for which daily reports need to be filed systems="systemA systemC systemZ" I then want to run a loop for i in ${systems} Analyze statistics Create the reports mailx (8 Replies)
Discussion started by: mugsymark
8 Replies

3. Shell Programming and Scripting

bad substitution error in ksh

hi, i created a shell script having the following content: #! /usr/bin/ksh FROM="myemail@domain.com" MAILTO="someemail@domain" SUBJECT="TEST" BODY="/export/home/adshocker/body.txt" ATTACH="/export/home/adshocker/attach.prog" echo $ATTACH ATTACH_NAME="${ATTACH##*/}" echo $ATTACH_NAME... (5 Replies)
Discussion started by: adshocker
5 Replies

4. UNIX for Dummies Questions & Answers

bad substitution

#!/bin/bash a1=( win 12,01,02,03,04 ) a2=( pre 04,05,06 ) a3=( msn 06,07,08,09 ) Given the above arrays, I want the script to return/echo the following in a loop; win 12,01,02,03,04 pre 04,05,06,07 msn 06,07,08,09 But I can't get it to do as such. I've tried; (2 Replies)
Discussion started by: Muhammad Rahiz
2 Replies

5. Shell Programming and Scripting

bad substitution error!

Hi All, I'm building a new shell script but i'm facing a problem with one line which is giving "bad substitution" error. Please assist script lines: #!/bin/sh printf "%s: " "Occurrence DATE (YYYYMMDD)"; read DATE shortdate=${DATE#??} o/p: ./test1: bad substitution This command is... (2 Replies)
Discussion started by: Dendany83
2 Replies

6. Programming

Make: Bad Substitution

Hi, I have a make file which I try to execute, but it failed when it arrived to the line: for r in ${PIPESTATUS }; do if (($r != 0)); then exit $r; fi;done; With the Error: ""make:/bin/sh: Bad substitution"" Or the Error: "make:${PIPESTATUS[...}: Bad substitution" (Depend on the operating... (3 Replies)
Discussion started by: nadne
3 Replies

7. Shell Programming and Scripting

Why I get bad bad substitution when using eval?

Why I get bad replace when using eval? $ map0=( "0" "0000" "0") $ i=0 $ eval echo \${map$i} 0000 $ a=`eval echo \${map$i}` !!!error happens!!! bash: ${map$i}: bad substitution How to resolve it ? Thanks! (5 Replies)
Discussion started by: 915086731
5 Replies

8. Shell Programming and Scripting

Bad substitution

Cant undestand :) why i have an error on line 2.it is working on my other boxes #!/bin/bash ret=$(echo Q | timeout 5 openssl s_client connect "${1`hostname`}:${2-443}" -ssl3 2> /dev/null) if echo "${ret}" | grep -q 'Protocol.*SSLv3'; then if echo "${ret}" | grep -q 'Cipher.*0000'; then ... (7 Replies)
Discussion started by: kenshinhimura
7 Replies

9. UNIX for Beginners Questions & Answers

Bad substitution issues.. but why?

i am trying to prepare a train and test dataset, for which i need to randomly split the data into corresponding folders (train,test).. I began on a simple script, but seem to get som weird error messages, that i cannot make sense of?.. what am I doing wrong? #!/bin/bash RED='\033] then... (13 Replies)
Discussion started by: kidi
13 Replies

10. Shell Programming and Scripting

Bad substitution - ShellCheck says okay

ShellCheck doesn't find any issues with this script. #!/bin/bash # color_meanings: explain meanings of colors used in bash ls eval "$(echo "no:fi:di:ln:pi:so:do:bd:cd:or:mi:su:sg:tw:st:ex" | sed -e 's/:/=/g; s/\;/\n/g')" { IFS=: for i in $LS_COLORS do ... (18 Replies)
Discussion started by: Xubuntu56
18 Replies
FP2HDF(1)						      General Commands Manual							 FP2HDF(1)

NAME
fp2hdf - convert floating point data to HDF SYNOPSIS
fp2hdf -h[elp] fp2hdf infile [infile...] -o[utfile outfile] [-r[aster] [ras_options...]] [-f[loat]] DESCRIPTION
fp2hdf converts floating point data to HDF Scientific Data Set (SDS) and/or 8-bit Raster Image Set (RIS8) format, storing the results in an HDF file. The image data can be scaled about a mean value. Input file(s) contain a single two-dimensional or three-dimensional floating point array in either ASCII text, native floating point, or HDF SDS format. If an HDF file is used for input, it must contain an SDS. The SDS need only contain a dimension record and the data, but if it also contains maximum and minimum values and/or scales for each axis, these will be used. If the input format is ASCII text or native floating point, see "Notes" below on how it must be organized. OPTIONS
-h[elp] Print a helpful summary of usage, and exit. -o[utfile] outfile Data from one or more input files are stored as one or more data sets and/or images in one HDF output file, outfile. -r[aster] Store output as a raster image set in the output file -f[loat] Store output as a scientific data set in the the output file. This is the default if the "-r" option is not specified. ras_opts: -e[xpand] horiz vert [depth] Expand float data via pixel replication to produce the image(s). horiz and vert give the horizontal and vertical resolution of the image(s) to be produced; and optionally, depth gives the number of images or depth planes (for 3D input data). -i[nterp] horiz vert [depth] Apply bilinear, or trilinear, interpolation to the float data to produce the image(s). horiz, vert, and depth must be greater than or equal to the dimensions of the original dataset. -p[alfile] palfile Store the palette with the image. Get the palette from palfile; which may be an HDF file containing a palette, or a file containing a raw palette. -m[ean] mean If a floating point mean value is given, the image will be scaled about the mean. The new extremes (newmax and newmin), as given by: newmax = mean + max(abs(max-mean), abs(mean-min)) newmin = mean - max(abs(max-mean), abs(mean-min)) will be equidistant from the mean value. If no mean value is given, then the mean will be: 0.5 * (max + min) INPUT
If the input file format is ASCII text or native floating point, it must have the following input fields: format nplanes nrows ncols max_value min_value [plane1 plane2 plane3 ...] row1 row2 row3 ... col1 col2 col3 ... data1 data2 data3 ... ... Where: format Format designator ("TEXT", "FP32" or "FP64"). nplanes Dimension of the depth axis ("1" for 2D input). nrows Dimension of the vertical axis. ncols Dimension of the horizontal axis. max_value Maximum data value. min_value Minimum data value. plane1, plane2, plane3, ... Scales for depth axis. row1, row2, row3, ... Scales for the vertical axis. col1, col2, col3, ... Scales for the horizontal axis. data1, data2, data3, ... The data ordered by rows, left to right and top to bottom; then optionally, ordered by planes, front to back. For FP32 and FP64 input format, format, nplanes, nrows, ncols, and nplanes are native integers; where format is the integer repre- sentation of the appropriate 4-character string (0x46503332 for "FP32" and 0x46503634 for "FP64"). The remaining input fields are composed of native 32-bit floating point values for FP32 input format, or native 64-bit floating point values for FP64 input format. EXAMPLE
Convert floating point data in "f1.txt" to SDS format, and store it as an SDS in HDF file "o1": fp2hdf f1.txt -o o1 Convert floating point data in "f2.hdf" to 8-bit raster format, and store it as an RIS8 in HDF file "o2": fp2hdf f2.hdf -o o2 -r Convert floating point data in "f3.bin" to 8-bit raster format and SDS format, and store both the RIS8 and the SDS in HDF file "o3": fp2hdf f3.bin -o o3 -r -f Convert floating point data in "f4" to a 500x600 raster image, and store the RIS8 in HDF file "o4". Also store a palette from "palfile" with the image: fp2hdf f4 -o o4 -r -e 500 600 -p palfile Convert floating point data in "f5" to 200 planes of 500x600 raster images, and store the RIS8 in HDF file "o5". Also scale the image data so that it is centered about a mean value of 10.0: fp2hdf f5 -o o5 -r -i 500 600 200 -m 10.0 SEE ALSO
hdf(5) October 30, 1999 FP2HDF(1)
All times are GMT -4. The time now is 06:32 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy