[Info-vax] DCL, was: Re: Microkernel (was: VMS port to x86)
Simon Clubley
clubley at remove_me.eisner.decus.org-Earth.UFP
Fri Aug 10 08:18:17 EDT 2012
On 2012-08-09, Paul Sture <paul at sture.ch> wrote:
> On Thu, 07 Jun 2012 17:19:46 +0000, Simon Clubley wrote:
>
>> On 2012-06-07, Paul Sture <paul.nospam at sture.ch> wrote:
>>> On Tue, 05 Jun 2012 18:49:39 +0000, Simon Clubley wrote:
>>>>
>>>> Optionally writing out the commands entered in the current session to
>>>> the end of a existing history file when you logout and having those
>>>> commands automatically available for you at next login as part of the
>>>> command history. (I am thinking .bash_history here).
>>>
>>> I have a bit of DCL which I implemented before RECALL got the ability
>>> to write its history to file. I'll dig it out later.
>>>
>> The main problem here is identifying the commands entered during the
>> current session from the commands from previous sessions which were
>> loaded into the recall buffer at the start of the session.
>>
>> If you have some DCL to do this, I would be interested to see how you
>> did it, thanks.
>
> Sorry for the delay but here it is. Contrary to what I said above, it
> does rely on being able to write the recall buffer. Its advantage over
> the RECALL command is that you can search for keywords anywhere in the
> buffer rather than at the start of lines
>
Thanks Paul.
What I was looking for was a way to be able to extract automatically only
the commands entered into the recall buffer from the current session.
I would then be able to append them to a combined history log and drop the
older commands once it got over a predefined size.
This functionality be built into bash and it's something which it would be
nice for DCL to have as well.
(Before anyone suggests it, you cannot just dump the whole recall buffer to
a file; think about the sequence of events when you have multiple DCL
sessions going at the same time (with their unique commands entered
during the course of that session), and what will happen when you exit
the sessions one by one.)
Simon.
> In my LOGIN.COM
>
> $ rec :== "pipe recall/all > sys$login:recall.out ; @sys$login:searchbuf"
>
> in searchbuf.com
>
> $! sys$login:searchbuf.com
> $! -----------------------
> $!
> $ if f$search("sys$login:recall.out") .eqs. "" then exit
> $ search/match=and sys$login:recall.out 'p1'
> $ delete/nolog sys$login:recall.out;*
>
> Usage:
>
> $ rec eve
> 1 type eveini.eve
> 4 sh log *eve*
>
> $ rec eve,sh !note no spaces or use "string" so it all goes in P1
> 4 sh log *eve*
>
> If you have some form of LOGOUT.COM this idea could be extended to
> preserving recall buffers across sessions and adding to them, sorting,
> what you will.
>
--
Simon Clubley, clubley at remove_me.eisner.decus.org-Earth.UFP
Microsoft: Bringing you 1980s technology to a 21st century world
More information about the Info-vax
mailing list