erlang erl文件编译的三种脚本

方案1:命令行

#!/bin/sh

#file name: erl.sh
#author: stars
#time:2015.06.05
#eg: ./erl.sh hello.erl start 2

#full name for erl name.
erlFileName=$1
#the function in erl file.
func=$2
# params
params=$3

erlFileSize=`expr length "$erlFileName"`
subSize=`expr $erlFileSize - 4`
erlFileBaseName=`expr substr "$erlFileName" 1 $subSize`

erlc $erlFileName
erl -noshell -s $erlFileBaseName $func $params -s init stop

方案2:escript

#!/usr/bin/env escript

main(_) -> io:format("Hello World\n").

方案3:makefile

#makefile for erl
#author: stars
#time: 2015.06.05

.SUFFIXES: .erl .beam

ERL         = erl -noshell

ERL_DIR     = .
BEAM_DIR    = .
MODULES     = $(patsubst $(ERL_DIR)/%.erl, $(BEAM_DIR)/%.beam, $(wildcard $(ERL_DIR)/*.erl))

all: compile
    $(ERL) -s hello start -s init stop

compile: $(MODULES)

%.beam: %.erl
    erlc -W $<

.PHONY: clean
clean:
    rm -rf $(MODULES) *.dump
时间: 2024-10-13 10:29:26

erlang erl文件编译的三种脚本的相关文章

简单程序的编译链接三种方法(编译多个源文件,静态链接库、动态链接库)

一个程序简单的程序如下: 1 hello.h #ifndef HELLO_H#define HELLO_H void hello(const char *name); #endif 2 hello.c #include <stdio.h>#include <stdlib.h> void hello(const char *name){ printf("hello %s\n",name);} 3 main.c #include <stdio.h>#in

php读取文件内容的三种方式(转)

分享下php读取文件内容的三种方法. php读取文件内容: //**************第一种读取方式***************************** header("content-type:text/html;charset=utf-8"); //文件路径 $file_path="text.txt"; //判断是否有这个文件 if(file_exists($file_path)){ if($fp=fopen($file_path,"a+&

反射概念:获取class文件对象的三种方式

反射 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制. 要想解剖一个类,必须先要获取到该类的字节码文件对象.而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象. 利用class文件对象,去使用该文件中的成员变量,构造方法,成员方法. 例子1:获取class文件对象的三种方式 public cla

文件打开的三种模式

文件打开的三种模式 文件操作的基础模式有三种(默认的操作模式为r模式): r模式为read w模式为write a模式为append 文件读写内容的格式有两种(默认的读写内容的模式为b模式): t模式为text b模式为bytes 需要注意的是:t.b这两种模式均不能单独使用,都需要与r/w/a之一连用. 一.文件打开模式之r模式 f = open('32.txt', mode='r') # 报错 f.write() f.close() # rt: read by text # windows的

Linux下快速清空文件内容的三种方法

Linux下快速清空文件内容的三种方法在Linux环境中,我们如果想快速清空一个文件或者log的内容: 1.#echo "" > test.txt(文件大小被截为1字节) 2.# > test.txt(文件大小被截为0字节) 3.#cat /dev/null > /home/test.txt(文件大小被截为0字节)————————————————版权声明:本文为CSDN博主「贾维斯博客」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声

第二天 命令行编译的三种方法

先进入Start Command Prompt with Ruby ,在编辑器中创建好 scss 文件 进行命令操作: 第一种方法   单个文件编译: 1 .在命令行输入 cd (1)如果默认文件就在 C盘 就直接进行命令操作 Start Command Prompt with Ruby: 编辑器: (2)如过默认文件不在 C盘 就要先进入到文件所在的盘内,在进行命令操作    2 .在命令行输入 文件路径 以及  sass css/one.scss:css/one.css Start Comm

简述为员工创立个人文件夹的三种方法

需求:为公司每个有域帐号的员工创立一个个人文件夹.此文件夹权限为员工本人完全控制和管理员完全控制.映射到员工的磁盘Z盘为驱动器 解决:三种方式:一,手动设置在共享服务器D盘建立文件夹Personalsharefile共享权限Everyon可编辑.共享名可以加$隐藏.图1 本地安全如图2 主要是关闭权限继承,domain user只应用到当前文件夹,不继承. 选定多个用户,然后配置配置主文件夹如下.图3.\192.168.1.160\PersonalShareFile\%username%点应用后

PHP和HTML代码混合编译的三种方法

第一种是在HTML中加PHP. 大段大段的html代码中,在各个需要执行php的地方<?php .... ?> 比如 line7-9: 1 <head> 2 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 3 <meta http-equiv="Content-Language" content="zh-

php读取文件内容的三种方法

<?php //**************第一种读取方式***************************** 代码如下: header("content-type:text/html;charset=utf-8"); //文件路径 $file_path = "text.txt"; //判断是否有这个文件 if (file_exists($file_path)) { if ($fp = fopen($file_path, "a+"))