Sponsored Content
Full Discussion: sed is dead
Top Forums Shell Programming and Scripting sed is dead Post 302525209 by origamisven on Thursday 26th of May 2011 04:54:16 AM
Old 05-26-2011
sed is dead

Hello everybody,
I'm new to bash scripting (and scripting in general) but I'm making decent progress in the hands-on solutions I need...
I've encountered a problem that seemed very simple to me at first, but had me going on for hours. Maybe you can help me.

Say I have an input text file like this...

test2:
SOL 0.031 7
SOL 0.032 8
SOL 0.033 8
SOL 0.034 8
SOL 0.035 9
SOL 0.036 9
SOL 0.037 9
SOL 0.038 10
SOL 0.040 10
SOL 0.041 11
SOL 0.042 11
SOL 0.043 11
I'm writing the coordinate of the second column into an array if the number in column 3 does not appear n times (thrice in my case) in the file.

if I echo out my array I get

0.031
0.038
0.040
I iterate through the array with a simple for loop like so...

Code:
for k in ${MOLARRAY[@]}
do
    sed -i -e '/"$k"/d' test2
done

I am trying to delete the lines that contain the values of my array in the text file test2 with sed. I've tried squeezing multiple ways of writing $k between the brackets but for some reason test2 is never edited.

any ideas?
 

9 More Discussions You Might Find Interesting

1. Solaris

Dead SUN

My SUN V210 refuses to fully boot up. We had a power outage (ie. someone tripped the cord) and thereafter the Sun will not come up, and the OS is not starting. The LED on the front is not lit. Monitor gets no feed, so I plugged in via the management port. The system comes up to: Trap 3e. and... (7 Replies)
Discussion started by: ireeneek
7 Replies

2. UNIX for Dummies Questions & Answers

dead.letter

HI, I am pretty new to Unix...but here is 1 serious problem...atleast for me..:-) now..the dead.letter file in /var/tmp has been growin continuously..n i dont know why..I ve even killed the sendmail process..but the dead.letter file keeps on increasin..Can anyone tell me where do I start... (6 Replies)
Discussion started by: unisam
6 Replies

3. UNIX for Dummies Questions & Answers

Jack Kilby dead at 81

If Edison and Ford were the the greatest inventors and influencers of the turn of the 20th century... then surely Jack Kilby was probably the most influential person of the late 21st century and for time immemorial...on our way of life. A legend dies (7 Replies)
Discussion started by: Kelam_Magnus
7 Replies

4. Filesystems, Disks and Memory

Dead partition on drive

We are still using solaris 1 with sunos 4.1.4 because nobody here knows Unix. My colleague did a backup (dump) to the wrong place (/dev/sd0h) and we lost this part of the drive. The information is still on tape but we cannot repartition the /dev/sd0h. fsck keeps on about the "wrong SUPER BLOCK"... (2 Replies)
Discussion started by: Tom Bekaert
2 Replies

5. Shell Programming and Scripting

what is dead.letter ??

Hi all can you please help me what is dead.letter file ? when it is created ? for the first time i have seen this file getting created in my current directory? I am using SunOs. Any IDEA ?? (2 Replies)
Discussion started by: jambesh
2 Replies

6. Filesystems, Disks and Memory

Dead SCSI drive

I have 2 dead SCSI drives. Can anyone tell me a good way to repair the disks??? Please! (1 Reply)
Discussion started by: disturbe_d
1 Replies

7. What is on Your Mind?

Usenet is dead

On servers i check there seems to be no news at all. (3 Replies)
Discussion started by: Action
3 Replies

8. Post Here to Contact Site Administrators and Moderators

Dead link in FAQ

Dead link from FAQ, then Technical FAQ: Senior Advisor - https://www.unix.com (Was about to suggest that a O/P read this FAQ). (9 Replies)
Discussion started by: methyl
9 Replies

9. Shell Programming and Scripting

showing dead accounts?

Got a quick question. How do you shows dead accounts (false shells) and how do you include a count at the end? (1 Reply)
Discussion started by: JA50
1 Replies
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)
All times are GMT -4. The time now is 05:31 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy