02-02-2009
Pipe text from a file into an array
Hi Guys I have a question about filling up an array
I have a file called USER_FILE.txt
it contains the following:
Real Name:Thomas A Username:THOMAS_A
Real Name:Thomas B Username:THOMAS_B
Real Name:Thomas C Username:THOMAS_C
Real Name:Thomas D Username:THOMAS_D
Real Name:Thomas E Username:THOMAS_E
I want to put this data into an array
here is what I am doing:
set -a User_array [ < USER_FILE.txt ]
however I do not believe this is working as when I run
echo ${User_array[0]}
nothing appears
Basically I need
echo ${User_array[0]}
to contain:
Real Name:Thomas A Username:THOMAS_A
echo ${User_array[1]}
to contain:
Real Name:Thomas B Username:THOMAS_B
echo ${User_array[2]}
to contain:
Real Name:Thomas C Username:THOMAS_C
etc etc
what am I doing wrong?
Thanks G
10 More Discussions You Might Find Interesting
1. UNIX Desktop Questions & Answers
OK... I'm fairly new to unix having the admin handed to me on a platter w/almost no training.
However, being a programmer, I do pick up things fairly easily, but this one is getting the best of me.
I have a unix server that runs multiple versions of the same ERP system, hand crafted for our... (1 Reply)
Discussion started by: chimodel
1 Replies
2. Shell Programming and Scripting
Hi all
I have a little brainscratcher here.
I want to draw a pie chart from data in a text file.
The drawing of the graph works fine, if I insert the data manually into a 2d array.
Now I want to pull the data from a text file (which was created using a uniq -c command) see sample below.... (2 Replies)
Discussion started by: pietie
2 Replies
3. UNIX for Dummies Questions & Answers
Hello all:
I have a following textfile data with name inst1.txt
HDR|ABCD|10-13-2008 to 10-19-2008.txt|10-19-2008|XYZ
DTL|H|5464-1|0|02-02-2008|02-03-2008||||F|||||||||
DTL|D|5464-1|1|02-02-2008|02-03-2008|1||JJJ
DTL|D|5464-1|2|02-02-2008|02-03-2008|1||JJJ... (9 Replies)
Discussion started by: ravi0435
9 Replies
4. UNIX for Dummies Questions & Answers
Hi,
I want to replace a field in a text delimited file with the actual number of records in the same file.
HDR|ABCD|10-13-2008 to 10-19-2008.txt|10-19-2008|XYZ
DTL|0|5464-1|0|02-02-2008|02-03-2008||||F|||||||||
DTL|1|5464-1|1|02-02-2008|02-03-2008|1||JJJ... (3 Replies)
Discussion started by: ravi0435
3 Replies
5. Shell Programming and Scripting
Hi Folks,
very basic question, how to do command piping for an array?
suppose i have names as an array, when I write this script:
#!/usr/bin/sh
date=`date +%y%m%d`;
names="a b"
for name in ${names}
do extract -tz +8 person 'income$|expense$' /home/ricki/$name/$date*.xml | tab -d -cols... (1 Reply)
Discussion started by: rickirick
1 Replies
6. Shell Programming and Scripting
Hello,
I am trying to make a bash script that can pull data from a file and then change one part of said data.
I want to search by username and pull the full line. That way there is a way to replace just one part of that line then return it back to the file.
My Data is stored like:
... (1 Reply)
Discussion started by: serverfull
1 Replies
7. Shell Programming and Scripting
this is Korn shell unix.
The scenario is I have a pipe delimited text file which needs to be customized. say for example,I have a pipe delimited text file with 15 columns(| delimited) and 200 rows. currently the 11th and 12th column has null values for all the records(there are other null columns... (4 Replies)
Discussion started by: vasan2815
4 Replies
8. Shell Programming and Scripting
Hello all, I have two files which are cmd and disk.
`$cat cmd
lsdev | grep -iw`
`$cat disk
hdisk2`
Now I want to use the contents of both the files in a way such that `lsdev | grep -iw` command works for hdisk2 when I write the following script:
`!#/bin/sh
cmd1="$( sed -n... (4 Replies)
Discussion started by: ravi.trivedi
4 Replies
9. Shell Programming and Scripting
Hi all,
i have a text file such as:
10 17:54:47,213
10 17:54:47,214
10 17:54:49,338
10 17:54:49,399
10 17:54:50,402
10 17:54:50,403
11 17:54:47,213
11 17:54:47,213
11 17:54:49,362
11 17:54:49,422
11 17:54:50,429
11 17:54:50,429
11 17:54:50,429
11 17:54:50,429
11 17:54:51,510
12... (10 Replies)
Discussion started by: sbamap
10 Replies
10. Linux
Hello,
I have standard loop
while read -r info; do
command $info
done < info
in info text file I have multiple commands each on line that I want to execute. When I used them in console they worked, but not with this loop.
This is one of the commands in info file:
grep... (4 Replies)
Discussion started by: adamlevine
4 Replies
LEARN ABOUT DEBIAN
pminres
pminres(4rheolef) rheolef-6.1 pminres(4rheolef)
NAME
pminres -- conjugate gradient algorithm.
SYNOPSIS
template <class Matrix, class Vector, class Preconditioner, class Real>
int pminres (const Matrix &A, Vector &x, const Vector &b, const Preconditioner &M,
int &max_iter, Real &tol, odiststream *p_derr=0);
EXAMPLE
The simplest call to 'pminres' has the folling form:
size_t max_iter = 100;
double tol = 1e-7;
int status = pminres(a, x, b, EYE, max_iter, tol, &derr);
DESCRIPTION
pminres solves the symmetric positive definite linear system Ax=b using the Conjugate Gradient method.
The return value indicates convergence within max_iter (input) iterations(0), or no convergence within max_iter iterations(1). Upon suc-
cessful return, output arguments have the following values:
x approximate solution to Ax = b
max_iter
the number of iterations performed before the tolerance was reached
tol the residual after the final iteration
NOTE
pminres follows the algorithm described in "Solution of sparse indefinite systems of linear equations", C. C. Paige and M. A. Saunders,
SIAM J. Numer. Anal., 12(4), 1975. For more, see http://www.stanford.edu/group/SOL/software.html and also the PhD "Iterative methods for
singular linear equations and least-squares problems", S.-C. T. Choi, Stanford University, 2006, http://www.stanford.edu/group/SOL/disser-
tations/sou-cheng-choi-thesis.pdf at page 60. The present implementation style is inspired from IML++ 1.2 iterative method library,
http://math.nist.gov/iml++.
IMPLEMENTATION
template <class Matrix, class Vector, class Preconditioner, class Real, class Size>
int pminres(const Matrix &A, Vector &x, const Vector &Mb, const Preconditioner &M,
Size &max_iter, Real &tol, odiststream *p_derr = 0, std::string label = "minres")
{
Vector b = M.solve(Mb);
Real norm_b = sqrt(fabs(dot(Mb,b)));
if (norm_b == Real(0.)) norm_b = 1;
Vector Mr = Mb - A*x;
Vector z = M.solve(Mr);
Real beta2 = dot(Mr, z);
Real norm_r = sqrt(fabs(beta2));
if (p_derr) (*p_derr) << "[" << label << "] #iteration residue" << std::endl;
if (p_derr) (*p_derr) << "[" << label << "] 0 " << norm_r/norm_b << std::endl;
if (beta2 < 0 || norm_r <= tol*norm_b) {
tol = norm_r/norm_b;
max_iter = 0;
dis_warning_macro ("beta2 = " << beta2 << " < 0: stop");
return 0;
}
Real beta = sqrt(beta2);
Real eta = beta;
Vector Mv = Mr/beta;
Vector u = z/beta;
Real c_old = 1.;
Real s_old = 0.;
Real c = 1.;
Real s = 0.;
Vector u_old (x.ownership(), 0.);
Vector Mv_old (x.ownership(), 0.);
Vector w (x.ownership(), 0.);
Vector w_old (x.ownership(), 0.);
Vector w_old2 (x.ownership(), 0.);
for (Size n = 1; n <= max_iter; n++) {
// Lanczos
Mr = A*u;
z = M.solve(Mr);
Real alpha = dot(Mr, u);
Mr = Mr - alpha*Mv - beta*Mv_old;
z = z - alpha*u - beta*u_old;
beta2 = dot(Mr, z);
if (beta2 < 0) {
dis_warning_macro ("pminres: machine precision problem");
tol = norm_r/norm_b;
max_iter = n;
return 2;
}
Real beta_old = beta;
beta = sqrt(beta2);
// QR factorisation
Real c_old2 = c_old;
Real s_old2 = s_old;
c_old = c;
s_old = s;
Real rho0 = c_old*alpha - c_old2*s_old*beta_old;
Real rho2 = s_old*alpha + c_old2*c_old*beta_old;
Real rho1 = sqrt(sqr(rho0) + sqr(beta));
Real rho3 = s_old2 * beta_old;
// Givens rotation
c = rho0 / rho1;
s = beta / rho1;
// update
w_old2 = w_old;
w_old = w;
w = (u - rho2*w_old - rho3*w_old2)/rho1;
x += c*eta*w;
eta = -s*eta;
Mv_old = Mv;
u_old = u;
Mv = Mr/beta;
u = z/beta;
// check residue
norm_r *= s;
if (p_derr) (*p_derr) << "[" << label << "] " << n << " " << norm_r/norm_b << std::endl;
if (norm_r <= tol*norm_b) {
tol = norm_r/norm_b;
max_iter = n;
return 0;
}
}
tol = norm_r/norm_b;
return 1;
}
rheolef-6.1 rheolef-6.1 pminres(4rheolef)