erlang 应用获取系统参数
很多时候,我们的程序需要一些预定义的参数,比如上次说的tcp_server的例子
一般参数有几种途径,具体参考这里http://blog.yufeng.info/archives/2852
app里面,env字段,比如,我们的tcp_server_app.src
{application, tcp_server,
[
{description, ""},
{vsn, "0.1"},
{registered, []},
{applications, [
kernel,
stdlib
]},
{mod, { tcp_server_app, []}},
{env, [
{listen_port,}
]}
]}.
这种直接编译以后运行,不需要rebar generate
还有一种,放基于rebar项目的rel/files/sys.config里面,例如
[
{sasl, [
{sasl_error_logger, {file, "log/sasl-error.log"}},
{errlog_type, error},
{error_logger_mf_dir, "log/sasl"}, % Log directory
{error_logger_mf_maxbytes, }, % MB max file size
{error_logger_mf_maxfiles, } % files max
]}, {tcp_server,[
{listen_port,}
]}
].
tcp_server是实现了application的behavior的模块名字
应用里面的代码大概就是这样
-define(DEF_PORT, ). get_app_env(Opt, Default) ->
case application:get_env(Opt) of
{ok, Val} -> Val;
_ ->
case init:get_argument(Opt) of
[[Val | _]] -> Val;
error -> Default
end
end. ListenPort = get_app_env(listen_port, ?DEF_PORT).
erlang 应用获取系统参数的更多相关文章
- 23、java 通过System.getProperties()获取系统参数
1.java的System.getProperty()方法可以获取的值 java.version Java 运行时环境版本 java.vendor Java 运行时环境供应商 java.vendor. ...
- java 通过System.getProperties()获取系统参数
转自:https://www.cnblogs.com/ksuifeng/archive/2010/09/25/1834416.html 1.java的System.getProperty()方法可以获 ...
- ansible的两种命令执行方式 : ad-hoc / playbook以及通过setup模块获取系统参数
一.什么是ad-hoc和playbook ad-hoc : 如果我们敲入一些命令去快速的完成一些操作,而不需要将这些执行过的命令刻意保存下来,这样的命令就叫做as-hoc命令,这里不做过多赘述. p ...
- Go-15-flag.String 获取系统参数
场景: 启动应用程序时,需要传入系统参数.例如:./start --b /notebook --p true --n 8 package main import ( "fmt" f ...
- 通过System.getProperties()获取系统参数
Properties props=System.getProperties(); //系统属性 System.out.println("Java的运行环境版本:"+props ...
- sysconf获取系统参数
头文件: #include <unistd.h> 原型:long sysconf(int sysnum); 示例: #include <stdio.h> #include &l ...
- 关于Java获取系统信息
本文部分转载自: http://www.cnblogs.com/wuhenke/archive/2011/11/19/2255400.html 我总结的相关类似博客:http://www.cnblog ...
- Erlang运行中的错误
Erlang运行时发生错误时,会返回一些错误信息,理解这些信息,对于学好.用好Erlang来说是必要. Erlang中的运行错误包括:badarg, badarith, badmatch, funct ...
- Erlang运行时的错误
Erlang运行时发生错误时,会返回一些错误信息,理解这些信息,对于学好.用好Erlang来说是必要. Erlang中的运行错误包括:badarg, badarith, badmatch, funct ...
随机推荐
- HTML中a标签的锚点
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- python学习笔记(接口自动化框架 V2.0)
这个是根据上次框架版本进行的优化 用python获取excel文件中测试用例数据 通过requets测试接口.并使用正则表达式验证响应信息内容 生成xml文件测试报告 版本更新内容: 1. 整理了Cr ...
- JSON字符串与JSON对象的互相转换
比如工作中遇到的app强制退出功能的参数问题 首先定义一个JSON字符串 objectStr : String value=UUID.randomUUID().toString();SimpleDat ...
- MySQL连接中出现大量的 init 状态问题
最怕的就是睡一觉醒来,系统出了问题. 大早系统无法登陆,以前没有经验的同学code的代码,竟然 try catch 没有记录异常日志信息. 查的问题一点头绪都没有,一直锁定在公司公共网关接口出了问题. ...
- opencv:基本图形绘制
可以使用opencv绘制 直线.圆.方形.椭圆等基本图形. 示例代码: #include <opencv.hpp> using namespace cv; int main() { // ...
- CSS如何设置字体的类型、大小、颜色
设计网页时,一般设置body的字体,让其他标签继承body的字体,这样设置特别方便,但是标题标签h1到h6和表单标签(input类型)是没有继承body的字体属性的,它们的字体需要单独设置. < ...
- postgresql recovery.conf改变需要重启吗
之前在研究pgpoll时,发现trigger_file参数指定的文件存在后,会自动将standby节点提升为可写节点.不需要手动执行pg_ctl promote,但是这个时间一般有延迟,因为进程会定期 ...
- [置顶]
Android RadioButton与TextView浪漫约会?
情景一 今天主要实现一个国家与地区切换,就是当我们选中RadioButton时然后将值设置到TextView中,听着这需求应该不难对吧?那么我们就开始约会吧? 看下原型图 准备条件: 首先需要一个ra ...
- Golang调用windows下的dll动态库中的函数
Golang调用windows下的dll动态库中的函数 使用syscall调用. package main import ( "fmt" "syscall" & ...
- 使用Metasploit收集邮箱信息
Metasploit提供了很多辅助的模块,非常实用.今天介绍一个叫search_email_collector的模块,它的功能是查找搜索引擎(google.bing.yahoo),收集和某个域名有关的 ...