So much interest in this topic, let's try another way for performance since his file is huge. This will edit the file in place and should be blazing fast.
These 2 Users Gave Thanks to binlib For This Post:
i need help..!!!!
i have one big text file estimate data file size 50 - 100GB with 70 Mega Rows.
on OS SUN Solaris version 8
How i can remove first line of the text file.
Please suggest me for solutions.
Thank you very much in advance:) (5 Replies)
The file FTP'd got few breaks and the data looks like:
ABCTOM NYMANAGER
ABCDAVE NJ
PROGRAMMER
ABCJIM CTTECHLEAD
ABCPETERCA
HR
and i want the output like:
ABCTOM NYMANAGER
ABCDAVE NJPROGRAMMER
ABCJIM CTTECHLEAD
ABCPETERCAHR
can you please help me in writing the shell... (8 Replies)
I have the following situation:
a text file with 50000 string patterns:
abc2344536
gvk6575556
klo6575556
....
and 3 text files each with more than 1 million lines:
...
000000 abc2344536 46575 0000
000000 abc2344536 46575 4444
000000 abc2344555 46575 1234
...
I... (8 Replies)
Hi,
Ive spent ages trying to find an explanation for how to do this on the web, but now feel like I'm :wall:
I would like to change each occurence (there are many within my script) of the following:
to
in Vim. I know how to search and replace when it is just single lines... (2 Replies)
I have two csv files having 90K records each & each row has around 50 columns.Lets say the file names are FILE1 and FILE2. I have to compare both the files and generate a new file that has rows from FILE2 if it differs.
FILE1
-----
2001,"John",25,19901130,21211.41,Unix Forum... (3 Replies)
Hmmm I think I found the correct subforum to ask my question...
I have some text files that I prepared in vi some time ago, and now I want to open and edit them with Windows Notepad. I don't have a Unix terminal at the moment so I need to do the conversion in Windows. Is there a way to do this?... (1 Reply)
Hi all,
I have some text files that I prepared in vi some time ago, and now I want to open and edit them with Windows Notepad. I don't have a Unix terminal at the moment so I need to do the conversion in Windows. Is there a way to do this? Or just reinsert thousands of line breaks again :eek: ? (2 Replies)
Hi All,
Need an urgent solution to an issue . We have created a ksh file or shell script which generates 1 DAT file. the DAT file contains extract of a select statement .
Now the issue is , when we are executing the ksh file , the output is coimng with page breaks and line breaks .
We have... (4 Replies)
Below code extracts multiple field values from XML into array and prints all in one line.
perl -nle '@r=/(?: jndiName| authDataAlias| value| minConnections| maxConnections| connectionTimeout| name)="(+)/g and print join ",",$ENV{tIPnSCOPE},$ENV{pr
ovider},$ENV{impClassName},@r' server.xml
... (4 Replies)
Discussion started by: kchinnam
4 Replies
LEARN ABOUT SUSE
text::wrap
Text::Wrap(3pm) Perl Programmers Reference Guide Text::Wrap(3pm)NAME
Text::Wrap - line wrapping to form simple paragraphs
SYNOPSIS
Example 1
use Text::Wrap;
$initial_tab = " "; # Tab before first line
$subsequent_tab = ""; # All other lines flush left
print wrap($initial_tab, $subsequent_tab, @text);
print fill($initial_tab, $subsequent_tab, @text);
$lines = wrap($initial_tab, $subsequent_tab, @text);
@paragraphs = fill($initial_tab, $subsequent_tab, @text);
Example 2
use Text::Wrap qw(wrap $columns $huge);
$columns = 132; # Wrap at 132 characters
$huge = 'die';
$huge = 'wrap';
$huge = 'overflow';
Example 3
use Text::Wrap;
$Text::Wrap::columns = 72;
print wrap('', '', @text);
DESCRIPTION
"Text::Wrap::wrap()" is a very simple paragraph formatter. It formats a single paragraph at a time by breaking lines at word boundaries.
Indentation is controlled for the first line ($initial_tab) and all subsequent lines ($subsequent_tab) independently. Please note:
$initial_tab and $subsequent_tab are the literal strings that will be used: it is unlikely you would want to pass in a number.
Text::Wrap::fill() is a simple multi-paragraph formatter. It formats each paragraph separately and then joins them together when it's
done. It will destroy any whitespace in the original text. It breaks text into paragraphs by looking for whitespace after a newline. In
other respects it acts like wrap().
Both "wrap()" and "fill()" return a single string.
OVERRIDES
"Text::Wrap::wrap()" has a number of variables that control its behavior. Because other modules might be using "Text::Wrap::wrap()" it is
suggested that you leave these variables alone! If you can't do that, then use "local($Text::Wrap::VARIABLE) = YOURVALUE" when you change
the values so that the original value is restored. This "local()" trick will not work if you import the variable into your own namespace.
Lines are wrapped at $Text::Wrap::columns columns (default value: 76). $Text::Wrap::columns should be set to the full width of your output
device. In fact, every resulting line will have length of no more than "$columns - 1".
It is possible to control which characters terminate words by modifying $Text::Wrap::break. Set this to a string such as '[s:]' (to break
before spaces or colons) or a pre-compiled regexp such as "qr/[s']/" (to break before spaces or apostrophes). The default is simply 's';
that is, words are terminated by spaces. (This means, among other things, that trailing punctuation such as full stops or commas stay
with the word they are "attached" to.) Setting $Text::Wrap::break to a regular expression that doesn't eat any characters (perhaps just a
forward look-ahead assertion) will cause warnings.
Beginner note: In example 2, above $columns is imported into the local namespace, and set locally. In example 3, $Text::Wrap::columns is
set in its own namespace without importing it.
"Text::Wrap::wrap()" starts its work by expanding all the tabs in its input into spaces. The last thing it does it to turn spaces back
into tabs. If you do not want tabs in your results, set $Text::Wrap::unexpand to a false value. Likewise if you do not want to use
8-character tabstops, set $Text::Wrap::tabstop to the number of characters you do want for your tabstops.
If you want to separate your lines with something other than "
" then set $Text::Wrap::separator to your preference. This replaces all
newlines with $Text::Wrap::separator. If you just want to preserve existing newlines but add new breaks with something else, set
$Text::Wrap::separator2 instead.
When words that are longer than $columns are encountered, they are broken up. "wrap()" adds a "
" at column $columns. This behavior can
be overridden by setting $huge to 'die' or to 'overflow'. When set to 'die', large words will cause "die()" to be called. When set to
'overflow', large words will be left intact.
Historical notes: 'die' used to be the default value of $huge. Now, 'wrap' is the default value.
EXAMPLES
Code:
print wrap(" ","",<<END);
This is a bit of text that forms
a normal book-style indented paragraph
END
Result:
" This is a bit of text that forms
a normal book-style indented paragraph
"
Code:
$Text::Wrap::columns=20;
$Text::Wrap::separator="|";
print wrap("","","This is a bit of text that forms a normal book-style paragraph");
Result:
"This is a bit of|text that forms a|normal book-style|paragraph"
SEE ALSO
For wrapping multi-byte characters: Text::WrapI18N. For more detailed controls: Text::Format.
LICENSE
David Muir Sharnoff <muir@idiom.org> with help from Tim Pierce and many many others. Copyright (C) 1996-2009 David Muir Sharnoff. This
module may be modified, used, copied, and redistributed at your own risk. Publicly redistributed versions that are modified must use a
different name.
perl v5.12.1 2010-04-26 Text::Wrap(3pm)