unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
Subject: Re: Reading portions of large files
Date: 10 Jan 2003 21:35:30 +0100	[thread overview]
Message-ID: <m3adi8eoa5.fsf@cicero.benny.turtle-trading.net> (raw)
In-Reply-To: m34r8h7wnx.fsf@wivenhoe.staff8.ul.ie

Brendan Halpin <brendan.halpin@ul.ie> writes:
> Use head and tail to split the file into the header-to-be-edited and
> the-rest. Edit the header-to-be-edited in emacs, save, then
> concatenated the-rest onto it.
> 
> Assuming all editing is within the first 2000 bytes (not tested):
> 
> head -c2000 bigfile > header-to-be-edited
> tail -c+2001 bigfile > the-rest
> (edit header-to-be-edited, save)
> cat header-to-be-edited the-rest > new-big-file

This assumes a) Unix, b) that you have the space and time ;-) to deal
with the large temporary files.

If you can assume Unix, dd is a little better, I think.  I recently
had success with using it for extracting and later re-inserting a bit
in a large file.  Getting the options right is a bit of a pain, but
the main thing was getting the direction (extract and re-insert) right
and using conv=notrunc for re-insertion.  And than dd is oriented
towards blocks of bytes, not lines, of course.  And you can not change
the size of the block to be edited, but than large files are usually
binary files, where you don't want to change byte offsets anyway. 


so long, benny

  reply	other threads:[~2003-01-10 20:35 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <mailman.100.1042135372.21513.help-gnu-emacs@gnu.org>
2003-01-09 18:20 ` Reading portions of large files David Kastrup
2003-01-10 19:21   ` Eli Zaretskii
     [not found]   ` <mailman.153.1042230313.21513.help-gnu-emacs@gnu.org>
2003-01-10 20:51     ` David Kastrup
2003-01-11  8:51       ` Eli Zaretskii
     [not found]       ` <mailman.169.1042278925.21513.help-gnu-emacs@gnu.org>
2003-01-11 10:42         ` David Kastrup
2003-01-12 20:38       ` Stefan Monnier <foo@acm.com>
2003-01-13  7:40         ` Miles Bader
2003-01-13  7:42           ` Miles Bader
2003-01-13  7:55             ` David Kastrup
2003-01-13  8:05               ` Miles Bader
2003-01-20  7:50         ` Lee Sau Dan
2003-01-24  7:55           ` Mac
2003-01-27 14:44           ` Stefan Monnier <foo@acm.com>
2003-01-10 16:27 ` Eric Pement
2003-01-10 17:16 ` Brendan Halpin
2003-01-10 20:35   ` Benjamin Riefenstahl [this message]
2003-01-11 10:25     ` Klaus Berndl
2003-01-20  7:50     ` Lee Sau Dan
2003-01-20 12:46       ` Benjamin Riefenstahl
2003-01-20  7:50   ` Lee Sau Dan
2003-01-09 15:45 Gerald.Jean

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m3adi8eoa5.fsf@cicero.benny.turtle-trading.net \
    --to=benjamin.riefenstahl@epost.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).