Erlang Mailing Lists

Author Message

<  Erlang questions mailing list  ~  [Erlang-Q] What does Ctrl+G do for the Eshell?

Guest
Posted: Mon Oct 03, 2011 7:28 am Reply with quote
Guest
Hello Erlangers,

When starting a erl shell, we will see a printout as:
Eshell V5.8.4 (abort with ^G)


then, I tried to press Ctrl+G and got:
User switch command
--> ls
Unknown command
--> q().
Unknown command
-->

I can do nothing with the prompt "-->". How to quit from it? and
what's "Ctrl+G" used for?


Thank you!
Barco
_______________________________________________
erlang-questions mailing list
erlang-questions@erlang.org
http://erlang.org/mailman/listinfo/erlang-questions
Post received from mailinglist
Guest
Posted: Mon Oct 03, 2011 7:32 am Reply with quote
Guest
Try q instead of q(). You may also want to try h.

Cheers,
CGS


On 10/03/2011 09:28 AM, Barco You wrote:
> Hello Erlangers,
>
> When starting a erl shell, we will see a printout as:
> Eshell V5.8.4 (abort with ^G)
>
>
> then, I tried to press Ctrl+G and got:
> User switch command
> --> ls
> Unknown command
> --> q().
> Unknown command
> -->
>
> I can do nothing with the prompt "-->". How to quit from it? and
> what's "Ctrl+G" used for?
>
>
> Thank you!
> Barco
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@erlang.org
> http://erlang.org/mailman/listinfo/erlang-questions

_______________________________________________
erlang-questions mailing list
erlang-questions@erlang.org
http://erlang.org/mailman/listinfo/erlang-questions
Post received from mailinglist
spawn.think
Posted: Mon Oct 03, 2011 7:51 am Reply with quote
User Joined: 29 Sep 2009 Posts: 21
Hi Barco,
View user's profile Send private message
Guest
Posted: Mon Oct 03, 2011 10:13 pm Reply with quote
Guest
Barco You wrote:
> Hello Erlangers,
>
> When starting a erl shell, we will see a printout as:
> Eshell V5.8.4 (abort with ^G)
>
>
> then, I tried to press Ctrl+G and got:
> User switch command
> --> ls
> Unknown command
> --> q().
> Unknown command
> -->
>
> I can do nothing with the prompt "-->". How to quit from it? and
> what's "Ctrl+G" used for?
>
>
The words "abort with ^G" are in fact hiding an extremely useful
function called JCL (job control mode) [1]. I overlooked this
function for years. Now I use it on a near daily basis and just
love it.

[1] http://www.erlang.org/doc/man/shell.html

Assume you have an Erlang node named 'server@myhost' running as a
service/daemon on your system. Wouldn't it be great if you could
run interactive commands on this node just like you do in a
shell? JCL let's you do that with ease.

Start up a new shell 'client@myhost' and hit ctrl-G to enter JCL.
Now start a remote shell to 'server@myhost'.

| (client@myhost)1>
| User switch command
| --> r server@myhost
| --> j
| 1* {shell,start,[init]}
| 2 {server@myhost,shell,start,[]}

You now have a local shell with id=1 and a remote shell with
id=2. Connect to the remote shell:

| --> c 2
|
| (server@myhost)1>

Now you have a shell on the server node where you can run any
command you want. This means you can call any exported function
in all modules loaded on the server. That kind of interaction
with a running system can be invaluable when trying to figure out
why it doesn't behave quite the way you planned.

Now of course there is a backside to the story. Doing something
wrong may cause your system to crash. So hey - let's be careful
out there.

/Anders

_______________________________________________
erlang-questions mailing list
erlang-questions@erlang.org
http://erlang.org/mailman/listinfo/erlang-questions
Post received from mailinglist
Guest
Posted: Mon Oct 03, 2011 10:23 pm Reply with quote
Guest
Hi,

Not sure if its fixed in R14 but why when running <r> without specifying node in user switch command your local erlang crashes? e.g.


User switch command
Guest
Posted: Tue Oct 04, 2011 6:31 am Reply with quote
Guest
Such a fabulous facility! Thank-you for telling! On Oct 4, 2011 6:13 AM, "Anders Ramsell" <anders@theheartofgold.org (anders@theheartofgold.org)> wrote:> Barco You wrote:
>> Hello Erlangers,
>>
>> When starting a erl shell, we will see a printout as:
>> Eshell V5.8.4 (abort with ^G)
>>
>>
>> then, I tried to press Ctrl+G and got:
>> User switch command
>> --> ls
>> Unknown command
>> --> q().
>> Unknown command
>> -->
>>
>> I can do nothing with the prompt "-->". How to quit from it? and
>> what's "Ctrl+G" used for?
>>
>>
> The words "abort with ^G" are in fact hiding an extremely useful
> function called JCL (job control mode) [1]. I overlooked this
> function for years. Now I use it on a near daily basis and just
> love it.
>
> [1] http://www.erlang.org/doc/man/shell.html
>
> Assume you have an Erlang node named 'server@myhost' running as a
> service/daemon on your system. Wouldn't it be great if you could
> run interactive commands on this node just like you do in a
> shell? JCL let's you do that with ease.
>
> Start up a new shell 'client@myhost' and hit ctrl-G to enter JCL.
> Now start a remote shell to 'server@myhost'.
>
> | (client@myhost)1>
> | User switch command
> | --> r server@myhost
> | --> j
> | 1* {shell,start,[init]}
> | 2 {server@myhost,shell,start,[]}
>
> You now have a local shell with id=1 and a remote shell with
> id=2. Connect to the remote shell:
>
> | --> c 2
> |
> | (server@myhost)1>
>
> Now you have a shell on the server node where you can run any
> command you want. This means you can call any exported function
> in all modules loaded on the server. That kind of interaction
> with a running system can be invaluable when trying to figure out
> why it doesn't behave quite the way you planned.
>
> Now of course there is a backside to the story. Doing something
> wrong may cause your system to crash. So hey - let's be careful
> out there.
>
> /Anders
>
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@erlang.org (erlang-questions@erlang.org)
> http://erlang.org/mailman/listinfo/erlang-questions


Post received from mailinglist
Guest
Posted: Tue Oct 04, 2011 12:22 pm Reply with quote
Guest
A further question regarding the erlang shell. Can we run an application without running the shell? As I know, to run an erlang app I have to first start the shell and then app:start().
As you said, erlang is more than an OS, so can I understand in the way that an app cannot run when the OS (Eshell) is not started?
Thanks,
Barco
Sent from my HTC On Oct 4, 2011 7:54 PM, "Robert Virding" <robert.virding@erlang-solutions.com (robert.virding@erlang-solutions.com)> wrote:> Hi,
>
> It was created back in the days when we were thinking of Erlang as more of an OS where you could run multiple "jobs" at the same time. Apart allowing you to start many concurrent jobs, not just the shell, it also multiplexes the i/o so only the connected job (the 'c' command) gets access, both read and write, to the user terminal. I/o to the other jobs is blocked. Otherwise having mixed i/o to/from many jobs at the same time becomes a right mess.
>
> The ^G works as all user terminal input passes through this layer. Now it should maybe be rewritten to use separate windows instead? If we ever get a "standard" window interface. Smile
>
> The name JCL (Job Control Language) is a joke on IBM's JCL which they used back in the old days to control their batch jobs. It was if course completely different.
>
> Robert
>
> ----- Original Message -----
>
>> Such a fabulous facility! Thank-you for telling!
>> On Oct 4, 2011 6:13 AM, "Anders Ramsell" < anders@theheartofgold.org (anders@theheartofgold.org)
>> > wrote:
>> > Barco You wrote:
>> >> Hello Erlangers,
>> >>
>> >> When starting a erl shell, we will see a printout as:
>> >> Eshell V5.8.4 (abort with ^G)
>> >>
>> >>
>> >> then, I tried to press Ctrl+G and got:
>> >> User switch command
>> >> --> ls
>> >> Unknown command
>> >> --> q().
>> >> Unknown command
>> >> -->
>> >>
>> >> I can do nothing with the prompt "-->". How to quit from it? and
>> >> what's "Ctrl+G" used for?
>> >>
>> >>
>> > The words "abort with ^G" are in fact hiding an extremely useful
>> > function called JCL (job control mode) [1]. I overlooked this
>> > function for years. Now I use it on a near daily basis and just
>> > love it.
>> >
>> > [1] http://www.erlang.org/doc/man/shell.html
>> >
>> > Assume you have an Erlang node named 'server@myhost' running as a
>> > service/daemon on your system. Wouldn't it be great if you could
>> > run interactive commands on this node just like you do in a
>> > shell? JCL let's you do that with ease.
>> >
>> > Start up a new shell 'client@myhost' and hit ctrl-G to enter JCL.
>> > Now start a remote shell to 'server@myhost'.
>> >
>> > | (client@myhost)1>
>> > | User switch command
>> > | --> r server@myhost
>> > | --> j
>> > | 1* {shell,start,[init]}
>> > | 2 {server@myhost,shell,start,[]}
>> >
>> > You now have a local shell with id=1 and a remote shell with
>> > id=2. Connect to the remote shell:
>> >
>> > | --> c 2
>> > |
>> > | (server@myhost)1>
>> >
>> > Now you have a shell on the server node where you can run any
>> > command you want. This means you can call any exported function
>> > in all modules loaded on the server. That kind of interaction
>> > with a running system can be invaluable when trying to figure out
>> > why it doesn't behave quite the way you planned.
>> >
>> > Now of course there is a backside to the story. Doing something
>> > wrong may cause your system to crash. So hey - let's be careful
>> > out there.
>> >
>> > /Anders
>> >
>> > _______________________________________________
>> > erlang-questions mailing list
>> > erlang-questions@erlang.org (erlang-questions@erlang.org)
>> > http://erlang.org/mailman/listinfo/erlang-questions
>
>> _______________________________________________
>> erlang-questions mailing list
>> erlang-questions@erlang.org (erlang-questions@erlang.org)
>> http://erlang.org/mailman/listinfo/erlang-questions


Post received from mailinglist
Guest
Posted: Tue Oct 04, 2011 12:46 pm Reply with quote
Guest
See http://www.erlang.org/doc/man/erl.html
in particular the -noshell flag.

Regards,
Gustav Simonsson

On Tue, 2011-10-04 at 20:22 +0800, Barco You wrote:
> A further question regarding the erlang shell. Can we run an
> application without running the shell? As I know, to run an erlang app
> I have to first start the shell and then app:start().
>
> As you said, erlang is more than an OS, so can I understand in the way
> that an app cannot run when the OS (Eshell) is not started?
>
> Thanks,
> Barco
> Sent from my HTC
>
> On Oct 4, 2011 7:54 PM, "Robert Virding"
> <robert.virding@erlang-solutions.com> wrote:
> > Hi,
> >
> > It was created back in the days when we were thinking of Erlang as
> more of an OS where you could run multiple "jobs" at the same time.
> Apart allowing you to start many concurrent jobs, not just the shell,
> it also multiplexes the i/o so only the connected job (the 'c'
> command) gets access, both read and write, to the user terminal. I/o
> to the other jobs is blocked. Otherwise having mixed i/o to/from many
> jobs at the same time becomes a right mess.
> >
> > The ^G works as all user terminal input passes through this layer.
> Now it should maybe be rewritten to use separate windows instead? If
> we ever get a "standard" window interface. Smile
> >
> > The name JCL (Job Control Language) is a joke on IBM's JCL which
> they used back in the old days to control their batch jobs. It was if
> course completely different.
> >
> > Robert
> >
> > ----- Original Message -----
> >
> >> Such a fabulous facility! Thank-you for telling!
> >> On Oct 4, 2011 6:13 AM, "Anders Ramsell" <
> anders@theheartofgold.org
> >> > wrote:
> >> > Barco You wrote:
> >> >> Hello Erlangers,
> >> >>
> >> >> When starting a erl shell, we will see a printout as:
> >> >> Eshell V5.8.4 (abort with ^G)
> >> >>
> >> >>
> >> >> then, I tried to press Ctrl+G and got:
> >> >> User switch command
> >> >> --> ls
> >> >> Unknown command
> >> >> --> q().
> >> >> Unknown command
> >> >> -->
> >> >>
> >> >> I can do nothing with the prompt "-->". How to quit from it? and
> >> >> what's "Ctrl+G" used for?
> >> >>
> >> >>
> >> > The words "abort with ^G" are in fact hiding an extremely useful
> >> > function called JCL (job control mode) [1]. I overlooked this
> >> > function for years. Now I use it on a near daily basis and just
> >> > love it.
> >> >
> >> > [1] http://www.erlang.org/doc/man/shell.html
> >> >
> >> > Assume you have an Erlang node named 'server@myhost' running as a
> >> > service/daemon on your system. Wouldn't it be great if you could
> >> > run interactive commands on this node just like you do in a
> >> > shell? JCL let's you do that with ease.
> >> >
> >> > Start up a new shell 'client@myhost' and hit ctrl-G to enter JCL.
> >> > Now start a remote shell to 'server@myhost'.
> >> >
> >> > | (client@myhost)1>
> >> > | User switch command
> >> > | --> r server@myhost
> >> > | --> j
> >> > | 1* {shell,start,[init]}
> >> > | 2 {server@myhost,shell,start,[]}
> >> >
> >> > You now have a local shell with id=1 and a remote shell with
> >> > id=2. Connect to the remote shell:
> >> >
> >> > | --> c 2
> >> > |
> >> > | (server@myhost)1>
> >> >
> >> > Now you have a shell on the server node where you can run any
> >> > command you want. This means you can call any exported function
> >> > in all modules loaded on the server. That kind of interaction
> >> > with a running system can be invaluable when trying to figure out
> >> > why it doesn't behave quite the way you planned.
> >> >
> >> > Now of course there is a backside to the story. Doing something
> >> > wrong may cause your system to crash. So hey - let's be careful
> >> > out there.
> >> >
> >> > /Anders
> >> >
> >> > _______________________________________________
> >> > erlang-questions mailing list
> >> > erlang-questions@erlang.org
> >> > http://erlang.org/mailman/listinfo/erlang-questions
> >
> >> _______________________________________________
> >> erlang-questions mailing list
> >> erlang-questions@erlang.org
> >> http://erlang.org/mailman/listinfo/erlang-questions
>
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@erlang.org
> http://erlang.org/mailman/listinfo/erlang-questions


_______________________________________________
erlang-questions mailing list
erlang-questions@erlang.org
http://erlang.org/mailman/listinfo/erlang-questions
Post received from mailinglist
wuji
Posted: Mon Aug 27, 2012 7:23 am Reply with quote
User Joined: 10 Aug 2012 Posts: 654
detonate it successfully aboard the plane.Officials say al-Asiri also designed designed authentic jordans designed the bombs hidden in printers that were shipped from
to Chicago. The bombs were intercepted in Dubai and the the real jordans the U.K. after they'd been placed aboard cargo planes.In a
intelligence bulletin issued overnight, the FBI and the Department of of cheap polo ralph lauren of Homeland Security said the Yemen group "intends to
plots along multiple fronts, including renewed efforts to target Western Western [h4]imitation designer *beep*[/h4] Western aviation.""It doesn't take a great number of people to
the kind of attack that we had on September 11," 11," [h2]cheap designer *beep*[/h2] 11," said Richard Clarke, an ABC News consultant and former
House counterterrorism official. "That was less than two dozen people people [h2]cheap polo ralph lauren[/h2] people and it's clear that they have that number available
View user's profile Send private message

Display posts from previous:  

All times are GMT
Page 1 of 1
This forum is locked: you cannot post, reply to, or edit topics.

Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum