Erlang—启动参数学习/研究

erlang启动参数有3种:emulator flags, flags 和plain arguments。

emulator flags 是以“+”开头的,用来控制模拟器的行为,附送一个非常实用的例子:

相关阅读:

更多关于Erlang的详细信息,或者下载地址请点这里

C:\&;erl+V Erlang(SMP,ASYNC_THREADS)(BEAM)emulatorversion5.8.2

flags 是以“-”开头的, 是erlang运行时系统的参数,可以用init:get_argument/1获得。

plain arguments 普通参数,在第一个flag参数前,或在– flag之后,-extra后的参数都是普通参数。

</pre><p><spanclass=”bold_code”>erl+Ww-snamearnie+R9-smy_init-extra+bertie</span></p><p><strong></strong></p><preclass=”plain”name=”code”>%erl+Ww-snamearnie+R9-smy_init-extra+bertie (arnie@host)1>init:get_argument(sname). {ok,[[“arnie”]]} (arnie@host)2>init:get_plain_arguments(). [“+bertie”]

Here +W w and +R 9 are emulator flags. -s my_init is an init flag, interpreted by init. -sname arnie is a user flag, stored by init. It is read by Kernel and will cause the Erlang runtime system to become distributed. Finally, everything after -extra (that is, +bertie) is considered as plain arguments.

Flags

-Application Par Val 把应用中的Par参数设置为值Val;

-args_file FileName 从文件FileName读取命令行参数;

-boot File 指定启动使用的boot文件,默认是$ROOT/bin/start.boot,在这个目录下还有start_clean.boot,,start_sasl.boot。如果需要sasl的话,就“-boot start_sasl ”; -boot_var Var Dir 代替$ROOT用的;

-code_path_cache 不常用;

-compile Mod1 Mod2 … 不推荐使用了,应该使用erlc;

-config Config 指定配置文件,这个是很有用的,比如在Programming Erlang里,就用到 erl -boot start_sasl -config elog3,其中文件全名是elog3.config,内容如下:

%%rotatinglogandminimaltty [{sasl,[ {sasl_error_logger,false}, %%definetheparametersoftherotatinglog %%thelogfiledirectory {error_logger_mf_dir,”D:/erlang/otpexample/error_logs”}, %%#bytesperlogfile {error_logger_mf_maxbytes,10485760},%10MB %%maximumnumberoflogfiles {error_logger_mf_maxfiles,10} ]}].

配置的含义,请参考相关书籍;

-connect_all false 貌似不常用;

-cookie Cookie 被-setcookie代替了;

-detached 脱离console,跑后台erlang进程用的,看做”nohup **** &”;

-emu_args debug用的,打印出实际传给模拟器的值;

-env Variable Value 设置操作系统环境变量用的,比如:

erl-envDISPLAYgin:0

-eval Expr(init flag) 表达式做启动参数,比如(下列代码在本机执行出错,以后再研究):

%erl-eval'{X,Y,Z}’=now(),random:seed(X,Y,Z).’

-extra(init flag) 后面跟的都是普通参数; -heart 启动心跳监控器; -hidden 设置为隐藏节点,该节点会连接集群的所有节点,但是在其他节点执行node/0,不会列出它; -hosts Hosts erlang运行在那些服务器的IP地址;

-id Id 给erlang进程设置一个id,一般和-sname和 -name一起用;

-init_debug 在启动/初始化erlang进程时,打印debug信息; -instr -loader Loader 为erl_prim_loader指定装载模块的方法,相当于java里指定classloader; -make -man Module -mode interactive | embedded -name Name 给一个erlang节点/进程设置一个名称 -noinput -noshell -nostick

-pa Dir1 Dir2 …

-pz Dir1 Dir2 … -remsh Node 远程启动一个erlang节点,比如(当然RSA神马的,要先搞定): 比天才难得,许多天赋差的人经过过勤学苦练也取得了很大的成功。

Erlang—启动参数学习/研究

相关文章:

你感兴趣的文章:

标签云: