Sponsored Content
Top Forums Shell Programming and Scripting problem with for loop and a variable with spaces...Hi Post 302414660 by chebarbudo on Tuesday 20th of April 2010 03:59:40 PM
Old 04-20-2010
Question problem with for loop and a variable with spaces...Hi

Hi there,

I don't understand the following behavior:
Code:
toto:~$ for word in un "deux trois"; do echo $word; done
un
deux trois
toto:~$ sentence='un "deux trois"'
toto:~$ for word in $sentence; do echo $word; done
un
"deux
trois"
toto:~$ sentence="un 'deux trois'"
toto:~$ for word in $sentence; do echo $word; done
un
'deux
trois'

Why is the word with a space split in two parts even though it is surrounded by quotes in the variable $sentence?
Is there any way to get the same behavior with a variable and with an explicit string?

Thanks for your help.
Santiago
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Strip leading and trailing spaces only in a shell variable with embedded spaces

I am trying to strip all leading and trailing spaces of a shell variable using either awk or sed or any other utility, however unscuccessful and need your help. echo $SH_VAR | command_line Syntax. The SH_VAR contains embedded spaces which needs to be preserved. I need only for the leading and... (6 Replies)
Discussion started by: jerardfjay
6 Replies

2. Shell Programming and Scripting

Problem with variable expension using for loop.

Hi, I have a problem with expending variables when used in a for loop: #!/bin/ksh VAR1=aaa VAR2=bbb VAR3=ccc for ITEM in VAR1 VAR2 VAR3 do echo "${ITEM}" done This gives: VAR1 VAR2 VAR3 (2 Replies)
Discussion started by: ejdv
2 Replies

3. Shell Programming and Scripting

Variable problem in for loop with if statement

Hi, Again a little problem. Do not understand good why an empty string is not detected. Here is the program: #!/bin/ksh APR=`date | grep Apr | awk '{print $2$3}'` MAY=`date | grep May | awk '{print $2$3}'` JUN=`date | grep Jun | awk '{print $2$3}'` echo "Variable Apr has value:... (6 Replies)
Discussion started by: ejdv
6 Replies

4. UNIX for Dummies Questions & Answers

For loop using find with file name spaces

Hello All, This question is actually for the service console of VMware ESX 3.5 but is relevant to this forum I think. I have been advised to use the following commands: for i in `find /vmfs/volumes/Test_VMFS/ -name "*.vmx"` do echo "$i" #sed -i 's/scsi1:0.present =... (3 Replies)
Discussion started by: mronsman
3 Replies

5. Shell Programming and Scripting

for loop ( string having spaces )

Dear All, i facing problem to use string having spaces in for loop.. file used for FOR LOOP command.txt rpm -t -v ttm -D -r RJLL -h YELP rpm -t -v ttm -D -r RJLL -h ERRT rpm -t -v ttm -D -r RJLL -h TYYE rpm -t -v ttm -D -r RJLL -h POOL CODE using for execute above command... (3 Replies)
Discussion started by: arvindng
3 Replies

6. Shell Programming and Scripting

Bourne Shell - Problem with while loop variable scope.

Hello I am having issues with a script I'm working on developing on a Solaris machine. The script is intended to find out how many times a particular user (by given userid) has logged into the local system for more than one hour today. Here is my while loop: last $user | grep -v 'sshd'... (7 Replies)
Discussion started by: DaveRich
7 Replies

7. Shell Programming and Scripting

Loop with Find—damn spaces!

Hi Guys, I'm trying to find all files with a particular extension and then loop some actions. The problem is that if the files have spaces in their names I get end up being each word as a separate result rather than the entire file. ext=".txt" out=".rtf" for i in $( find "$1" -name "*$ext" );... (9 Replies)
Discussion started by: imonkey
9 Replies

8. Shell Programming and Scripting

Array Variable being Assigned Values in Loop, But Gone when Loop Completes???

Hello All, Maybe I'm Missing something here but I have NOOO idea what the heck is going on with this....? I have a Variable that contains a PATTERN of what I'm considering "Illegal Characters". So what I'm doing is looping through a string containing some of these "Illegal Characters". Now... (5 Replies)
Discussion started by: mrm5102
5 Replies

9. Shell Programming and Scripting

String variable concatenation through loop problem

Hi Team!! Please can anyone tell me why the following line does not work properly? str3+=$str2 it seems that str3 variable does not keep its value in order to be concatenated in the next iteration! Thus when i print the result of the line above it returns the str2 value What i want to do is to... (8 Replies)
Discussion started by: paladinaeon
8 Replies

10. UNIX for Dummies Questions & Answers

Awk: problem for loop through variable

Hi, input: AAA|1 my script (the function is just an example): gawk 'BEGIN{FS=OFS="|"} function repeat(str, n, rep, i){ for(i=1; i<=n; i++) rep=rep str return rep } { variable_1=repeat($1,$2) variable_2=repeat($1,$2+1) variable_3=repeat($1,$2+3) ... (5 Replies)
Discussion started by: beca123456
5 Replies
bamg2geo(1rheolef)						    rheolef-6.1 						bamg2geo(1rheolef)

NAME
bamg2geo - convert bamg mesh in geo format SYNOPSIS
bamg2geo options input[.bamg] input[.dmn] bamg2geo options input[.bamg] -Cl domlabel bamg2geo options input[.bamg] {-dom domname}* DESCRIPTION
Convert a bamg `.bamg' into `.geo' one. The output goes to standart output. The `.dmn' file specifies the domain names, since bamg mesh generator uses numbers as domain labels. EXAMPLE
bamg -g toto.bamgcad -o toto.bamg bamg2geo toto.bamg toto.dmn > toto.geo BAMG CAD FILE
This file describe the boundary of the mesh geometry. A basic example writes (See bamg documentation for more); MeshVersionFormatted 0 Dimension 2 Vertices 4 0 0 1 1 0 2 1 1 3 0 1 4 Edges 4 1 2 101 2 3 102 3 4 103 4 1 104 hVertices 0.1 0.1 0.1 0.1 DOMAIN NAME FILE
This auxilliary `.dmn' file defines the boundary domain names as used by Rheolef, since bamg uses numeric labels for domains. EdgeDomainNames 4 bottom right top left THE DOMAIN NAME FILE CAN ALSO SPECIFY ADDITIONAL VERTICES DOMAIN
EdgeDomainNames 4 bottom right top left VerticeDomainNames 4 left_bottom right_bottom right_top left_top Vertice domain names are usefull for some special boundary conditions. OPTIONS
-upgrade -noupgrade Default is to output a version 2 `.geo' file format. See geo(1). With the -noupgrade, a version 1 file format is assumed. -dom dom1 ... -dom domN SEE ALSO
geo(1) rheolef-6.1 rheolef-6.1 bamg2geo(1rheolef)
All times are GMT -4. The time now is 08:51 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy