bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Command substitution / word splitting question


From: pk
Subject: Re: Command substitution / word splitting question
Date: Fri, 23 Apr 2010 09:39:02 +0100
User-agent: KNode/4.3.5

Binarus wrote:

> The script
> 
> echo 'line1' > file
> echo 'line2' >> file
> RESULT=$(cat file)
> echo "$RESULT"
> 
> gives the following output:
> 
> line1
> line2
> 
> I don't understand why: the command substitution $(cat file) is not
> within double quotes, so word splitting should be applied to the
> result of the substitution and any embedded newlines should be
> removed. Thus, $RESULT should contain text without newlines after line
> three in the above script is executed.

Word splitting does not happen in variable assignment. So

RESULT=$(cat file)

puts literally

line1
line2

in RESULT. When you later do echo "$RESULT", quoting the variable preserves 
its value.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]