Re: [CentOS] Variable assigned to grep output - missing letter n!

2011-07-21 Thread Michael Gliwinski
On Wednesday 20 Jul 2011 20:53:06 Sean Carolan wrote:
 I had this in my bash history:
 
 IFS='\n'
 
 That seems to have been the cause of the missing n's.

I know you used python in the end, but for the record this should have been:

IFS=$'\n'

i.e. the \n has to be expanded to a newline, otherwise it causes word 
splitting on either '\' or 'n'.


-- 
Michael Gliwinski
Henderson Group Information Services
9-11 Hightown Avenue, Newtownabby, BT36 4RT
Phone: 028 9034 3319

**
The information in this email is confidential and may be legally privileged.  
It is intended solely for the addressee and access to the email by anyone else 
is unauthorised.
If you are not the intended recipient, any disclosure, copying, distribution or 
any action taken or omitted to be taken in reliance on it, is prohibited and 
may be unlawful.
When addressed to our clients, any opinions or advice contained in this e-mail 
are subject to the terms and conditions expressed  in the governing client 
engagement leter or contract.
If you have received this email in error please notify 
supp...@henderson-group.com

John Henderson (Holdings) Ltd
Registered office: 9 Hightown Avenue, Mallusk, County Antrim, Northern Ireland, 
BT36 4RT.
Registered in Northern Ireland
Registration Number NI010588
Vat No.: 814 6399 12
*

___
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos


[CentOS] Variable assigned to grep output - missing letter n!

2011-07-20 Thread Sean Carolan
This is kind of odd.

[scarolan@host:~]$ cat loremipsum.txt
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis
ipsum sed elit laoreet malesuada. Quisque rhoncus dui vitae eros
euismod fermentum sollicitudin sem scelerisque. Nulla facilisi.
Maecenas mollis pulvinar euismod. Duis viverra pharetra turpis eget
feugiat. Nulla facilisi. Nullam facilisis, felis vitae lacinia
fermentum, enim erat placerat erat, vel imperdiet lorem velit et
ligula. Nam congue est in nisl lacinia lobortis. Vivamus elementum
lacinia sodales. Curabitur commodo risus tincidunt augue pulvinar
vehicula. Morbi eget velit sollicitudin nibh porta molestie. Maecenas
in augue id quam ullamcorper rutrum.

[scarolan@host:~]$ vi loremipsum.txt
[scarolan@host:~]$ myvar=$(grep lorem loremipsum.txt)
[scarolan@host:~]$ echo $myvar
Lorem ipsum dolor sit amet, co sectetur adipisci g elit. Do ec quis
ipsum sed elit laoreet malesuada. Quisque rho cus dui vitae eros
euismod ferme tum sollicitudi  sem scelerisque. Nulla facilisi. Maece
as mollis pulvi ar euismod. Duis viverra pharetra turpis eget feugiat.
Nulla facilisi. Nullam facilisis, felis vitae laci ia ferme tum, e im
erat placerat erat, vel imperdiet lorem velit et ligula. Nam co gue
est i   isl laci ia lobortis. Vivamus eleme tum laci ia sodales.
Curabitur commodo risus ti cidu t augue pulvi ar vehicula. Morbi eget
velit sollicitudi   ibh porta molestie. Maece as i  augue id quam
ullamcorper rutrum.

Where did all the letter n's go?
___
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos


Re: [CentOS] Variable assigned to grep output - missing letter n!

2011-07-20 Thread Lamar Owen
On Wednesday, July 20, 2011 03:23:58 PM Sean Carolan wrote:
[snip]
 Where did all the letter n's go?

I can't duplicate the problem here on a CentOS 5.6 box.  What locale are you 
set to?  Here's what I get (note that a copy from the e-mail you sent embedded 
newlines, which had to be stripped out (one of the many things xargs makes 
trivially easy) to get the result):

$ cat loremipsum.txt
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis
ipsum sed elit laoreet malesuada. Quisque rhoncus dui vitae eros
euismod fermentum sollicitudin sem scelerisque. Nulla facilisi.
Maecenas mollis pulvinar euismod. Duis viverra pharetra turpis eget
feugiat. Nulla facilisi. Nullam facilisis, felis vitae lacinia
fermentum, enim erat placerat erat, vel imperdiet lorem velit et
ligula. Nam congue est in nisl lacinia lobortis. Vivamus elementum
lacinia sodales. Curabitur commodo risus tincidunt augue pulvinar
vehicula. Morbi eget velit sollicitudin nibh porta molestie. Maecenas
in augue id quam ullamcorper rutrum.

$ myvar=$(grep lorem loremipsum.txt)
$ echo $myvar
fermentum, enim erat placerat erat, vel imperdiet lorem velit et
$ mv loremipsum.txt lorem-newlines.txt
$ cat lorem-newlines.txt |xargs -n 100
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis ipsum sed 
elit laoreet malesuada. Quisque rhoncus dui vitae eros euismod fermentum 
sollicitudin sem scelerisque. Nulla facilisi. Maecenas mollis pulvinar euismod. 
Duis viverra pharetra turpis eget feugiat. Nulla facilisi. Nullam facilisis, 
felis vitae lacinia fermentum, enim erat placerat erat, vel imperdiet lorem 
velit et ligula. Nam congue est in nisl lacinia lobortis. Vivamus elementum 
lacinia sodales. Curabitur commodo risus tincidunt augue pulvinar vehicula. 
Morbi eget velit sollicitudin nibh porta molestie. Maecenas in augue id quam 
ullamcorper rutrum.
$ cat lorem-newlines.txt |xargs -n 100 loremipsum.txt
$ myvar=$(grep lorem loremipsum.txt)
$ echo $myvar
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis ipsum sed 
elit laoreet malesuada. Quisque rhoncus dui vitae eros euismod fermentum 
sollicitudin sem scelerisque. Nulla facilisi. Maecenas mollis pulvinar euismod. 
Duis viverra pharetra turpis eget feugiat. Nulla facilisi. Nullam facilisis, 
felis vitae lacinia fermentum, enim erat placerat erat, vel imperdiet lorem 
velit et ligula. Nam congue est in nisl lacinia lobortis. Vivamus elementum 
lacinia sodales. Curabitur commodo risus tincidunt augue pulvinar vehicula. 
Morbi eget velit sollicitudin nibh porta molestie. Maecenas in augue id quam 
ullamcorper rutrum.
$ 
___
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos


Re: [CentOS] Variable assigned to grep output - missing letter n!

2011-07-20 Thread Sean Carolan
2011/7/20 Lamar Owen lo...@pari.edu:
 On Wednesday, July 20, 2011 03:23:58 PM Sean Carolan wrote:
 [snip]
 Where did all the letter n's go?

 I can't duplicate the problem here on a CentOS 5.6 box.  What locale are you 
 set to?  Here's what I get (note that a copy from the e-mail you sent 
 embedded newlines, which had to be stripped out (one of the many things xargs 
 makes trivially easy) to get the result):

Here's a simpler example, with a single line in the file:

[scarolan@server:~]$ cat loremipsum.txt
Lorem ipsum dolor sit amet, consectetur adipiscing elit. n n n n n
lots of letter n!

[scarolan@server:~]$ myvar=$(grep Lorem loremipsum.txt)

[scarolan@server:~]$ echo $myvar
Lorem ipsum dolor sit amet, co sectetur adipisci g elit.
lots of letter  !

Weird huh?
___
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos


Re: [CentOS] Variable assigned to grep output - missing letter n!

2011-07-20 Thread Ljubomir Ljubojevic
Sean Carolan wrote:
 This is kind of odd.
 
 [scarolan@host:~]$ cat loremipsum.txt
 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis
 ipsum sed elit laoreet malesuada. Quisque rhoncus dui vitae eros
 euismod fermentum sollicitudin sem scelerisque. Nulla facilisi.
 Maecenas mollis pulvinar euismod. Duis viverra pharetra turpis eget
 feugiat. Nulla facilisi. Nullam facilisis, felis vitae lacinia
 fermentum, enim erat placerat erat, vel imperdiet lorem velit et
 ligula. Nam congue est in nisl lacinia lobortis. Vivamus elementum
 lacinia sodales. Curabitur commodo risus tincidunt augue pulvinar
 vehicula. Morbi eget velit sollicitudin nibh porta molestie. Maecenas
 in augue id quam ullamcorper rutrum.
 
 [scarolan@host:~]$ vi loremipsum.txt
 [scarolan@host:~]$ myvar=$(grep lorem loremipsum.txt)
 [scarolan@host:~]$ echo $myvar
 Lorem ipsum dolor sit amet, co sectetur adipisci g elit. Do ec quis
 ipsum sed elit laoreet malesuada. Quisque rho cus dui vitae eros
 euismod ferme tum sollicitudi  sem scelerisque. Nulla facilisi. Maece
 as mollis pulvi ar euismod. Duis viverra pharetra turpis eget feugiat.
 Nulla facilisi. Nullam facilisis, felis vitae laci ia ferme tum, e im
 erat placerat erat, vel imperdiet lorem velit et ligula. Nam co gue
 est i   isl laci ia lobortis. Vivamus eleme tum laci ia sodales.
 Curabitur commodo risus ti cidu t augue pulvi ar vehicula. Morbi eget
 velit sollicitudi   ibh porta molestie. Maece as i  augue id quam
 ullamcorper rutrum.
 
 Where did all the letter n's go?

1. What does grep lorem loremipsum.txt say?
2. What does echo loremipsum.txt | grep lorem say?


-- 

Ljubomir Ljubojevic
(Love is in the Air)
PL Computers
Serbia, Europe

Google is the Mother, Google is the Father, and traceroute is your
trusty Spiderman...
StarOS, Mikrotik and CentOS/RHEL/Linux consultant
___
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos


Re: [CentOS] Variable assigned to grep output - missing letter n!

2011-07-20 Thread Sean Carolan
 [scarolan@server:~]$ echo $myvar
 Lorem ipsum dolor sit amet, co sectetur adipisci g elit.
 lots of letter  !

 Weird huh?

Ok, I'm a bonehead; I had this in my bash history:

IFS='\n'

That seems to have been the cause of the missing n's.  Now the next
question would be, how can I include the \n characters in my variable
string, without fudging with $IFS?
___
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos


Re: [CentOS] Variable assigned to grep output - missing letter n!

2011-07-20 Thread Devin Reade
--On Wednesday, July 20, 2011 02:53:06 PM -0500 Sean Carolan
scaro...@gmail.com wrote:

 Now the next
 question would be, how can I include the \n characters in my variable
 string, without fudging with $IFS?

Can you describe, functionally and a bit higher level, what you're
trying to achieve?  Is myvar supposed to contain the entire file
content if the file contains lorem, or just any lines containing
lorem complete with newline, or are you expecting some other form 
of delimiter, or what?  Also of interest is what you're going to do
with myvar after the fact (write it out, do a replacement, whatever).

For example, if you're trying to do some form of processing that
only considers lines containing lorem, other tools might give
a cleaner, faster, and more maintainable result:

   #! /usr/bin/perl
   use taint;
   use strict;

   while () {
  if (m,lorem,) {
 # do something with $_
  }
   }

(No, I don't advocate perl for everything, but knowing more about the
problem can
help in determining a suitable solution.)

Devin
___
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos


Re: [CentOS] Variable assigned to grep output - missing letter n!

2011-07-20 Thread Sean Carolan
 (No, I don't advocate perl for everything, but knowing more about the
 problem can
 help in determining a suitable solution.)

You're right, I gave up and used python instead.  The basic idea here
was to gather together a long list of hostnames by grepping through a
few hundred files, check the list for duplicates, and alert someone if
duplicates were found.  I had a nifty one-liner using grep, sort, and
uniq -c that basically spat out a list of hosts with duplicate
entries, but in the end it was easier to manipulate the data (at least
for me) using python.

thanks

Sean
___
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos