Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 457
  • Last Modified:

Korn shell: conents of a file to a variable.

Inside my korn shell there is a following pice of code:

var=`cat file.ext`
echo $var

The result are the contents of the file without the end lines. How do i make sure, that endline characters are included in var?

Thanks,

Eugene.
0
lorus77
Asked:
lorus77
  • 2
  • 2
  • 2
  • +8
1 Solution
 
biraCommented:
var=`cat -ve file.ext`
echo $var
0
 
lorus77Author Commented:
sorry, no.

All it does is add $ perioidically where the endline character is suppose to be.

Eugene.
0
 
ozoCommented:
var=`cat -ve file.ext`
echo $var | perl -pe 's/\$( |$)/\n/g'
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
ahoffmannCommented:
the variable itself cannot contain newlines and/or carriage returns
0
 
chris_calabreseCommented:
Or, something more along the lines of

typeset -i n=0
cat file | while read LINE
do    var[n]="$LINE"
      n=$((n+1))
done


typeset -i m=0
while [ "$m" -lt "$n" ]
do      print -r -- "${var[$m]}"
        m=$((m+1))
done
0
 
JYoungmanCommented:
Try

content="`cat file.ext`"
echo "$content"

or, better,

content="`cat file.ext`"
printf "%s\n" "$content"

0
 
chris_calabreseCommented:
Now why didn't I think of that?  Duh.
0
 
bedotCommented:
what utility to put an entiere file in an environment variable?
if you want absolutely this, you can add a newline with concatenation:  var2=$var'\n'

otherwise, is possible to put the command line in var:

var='cat file.text'

and then execute-it

$var

note: ' and not `
0
 
joolsCommented:
Have you used double quotes?

var=`cat file.text`
echo "$var"

0
 
joolsCommented:
oops, just seen JYoungmans answer... LOL :-)
0
 
JYoungmanCommented:
See answer in my comment above.
0
 
SantunesCommented:
try out this:

IFS=
var=`cat file`
echo $var
unset IFS
0
 
tfewsterCommented:
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:
- Answered by JYoungman

Please leave any comments here before 13/1/2003

PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER !

tfewster (I don't work here, I'm just an Expert :-)
0
 
SpideyModCommented:
per recommendation

SpideyMod
Community Support Moderator @Experts Exchange

JYoungman,
Please post all comments as comments, not as an answer unless you are certain your comment not only will solve the questioner's problem, but it is the only possible answer.  I realize it is frustrating when a questioner abandons a question, but you do have a course of action to rectify this.  Post a recommendation as tfewster did and then follow it up with a zero point question in community support and the moderators will take the appropriate action.  Thanks for your cooperation.

0

Featured Post

[Webinar] Database Backup and Recovery

Does your company store data on premises, off site, in the cloud, or a combination of these? If you answered “yes”, you need a data backup recovery plan that fits each and every platform. Watch now as as Percona teaches us how to build agile data backup recovery plan.

  • 2
  • 2
  • 2
  • +8
Tackle projects and never again get stuck behind a technical roadblock.
Join Now