Date: Fri, 1 Sep 2023 11:46:58 -0400 From: Paul Procacci <pprocacci@gmail.com> To: listac@nebelschwaden.de Cc: questions@freebsd.org Subject: Re: cut off last lines of a document Message-ID: <CAFbbPujBWGDKGD7gJrgmMB-DmqG_1jYbAbZ_FV4w5QiAzafR9A@mail.gmail.com> In-Reply-To: <de480aeb-3f8c-4be2-8162-6d9f033f201a@nebelschwaden.de> References: <57be5495-97f8-4f22-9ae2-cd9712596e64@nebelschwaden.de> <de480aeb-3f8c-4be2-8162-6d9f033f201a@nebelschwaden.de>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
On Fri, Sep 1, 2023 at 6:53 AM Ede Wolf <listac@nebelschwaden.de> wrote:
> Am 01.09.23 um 10:43 schrieb Ede Wolf:
> > Hello,
> >
> > From a file/output with an unknown amount of lines, I would like to
> > filter out, or not display, the last 3 lines. Is there a way to archive
> > this?
> >
> > For those also using linux, there is a "head -n -3" for this. That
> > negative number option is not available on FreeBSD, but maybe there is
> > an alterative way of doing this? Preferably /bin/sh compatible.
> >
> > Thanks
> >
> > Ede
> >
>
> As a sidenote: If possible, I would like to avoid using "tail -r | tail
> -n +4 | tail -r" as well, as it again is specific to FreeBSD, so if
> there is a more universal solution, that would be preferred. Even though
> this of course is a FreeBSD mailing list.
>
>
>
With these restrictions, you could use something like:
sed -e :a -e '$d;N;2,3ba' -e 'P;D' <filename>
~Paul
--
__________________
:(){ :|:& };:
[-- Attachment #2 --]
<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Sep 1, 2023 at 6:53 AM Ede Wolf <<a href="mailto:listac@nebelschwaden.de">listac@nebelschwaden.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Am 01.09.23 um 10:43 schrieb Ede Wolf:<br>
> Hello,<br>
> <br>
> From a file/output with an unknown amount of lines, I would like to <br>
> filter out, or not display, the last 3 lines. Is there a way to archive <br>
> this?<br>
> <br>
> For those also using linux, there is a "head -n -3" for this. That <br>
> negative number option is not available on FreeBSD, but maybe there is <br>
> an alterative way of doing this? Preferably /bin/sh compatible.<br>
> <br>
> Thanks<br>
> <br>
> Ede<br>
> <br>
<br>
As a sidenote: If possible, I would like to avoid using "tail -r | tail <br>
-n +4 | tail -r" as well, as it again is specific to FreeBSD, so if <br>
there is a more universal solution, that would be preferred. Even though <br>
this of course is a FreeBSD mailing list.<br>
<br>
<br>
</blockquote></div><br clear="all">
With these restrictions, you could use something like:<br><br>sed -e :a -e '$d;N;2,3ba' -e 'P;D' <filename>
<br><div><br></div><div>~Paul<br></div><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature">__________________<br><br>:(){ :|:& };:</div></div>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFbbPujBWGDKGD7gJrgmMB-DmqG_1jYbAbZ_FV4w5QiAzafR9A>
