当前位置: 首页 > news >正文

Lua 在终端使用交互模式

文章目录

    • 一、进入交互模式
    • 二、交互模式参数
      • 1、参数 -e
      • 2、参数 -i
      • 3、参数 -v
      • 4、参数 -l
    • 三、dofile 调试
    • 四、脚本运行 Lua
    • 五、写在最后

一、进入交互模式

在命令行输入

lua  

请添加图片描述

二、交互模式参数

lua [options] [script [args]]

options 可选参数有:

参数描述
-e stat执行字符串’stat’
-i执行“脚本”后进入交互模式
-l mod加载库 ‘mod’ 进入全局 ‘mod’
-l g=mod加载库 ‘mod’ 进入全局 ‘g’
-v显示版本信息
-E忽略环境变量
-W打开警告

1、参数 -e

允许我们直接在命令行中输入代码,如果不加 -e ,则会识别有误,并且最好加上双引号。

lua -e "print(math.sin(12))"

请添加图片描述

2、参数 -i

lua -i <需要加载的 lua 文件>

如果想在使用完文件后,进入交互,可以在命令中增加 -i,在调试阶段很有用。

请添加图片描述

3、参数 -v

lua -v

查看版本
请添加图片描述

4、参数 -l

用于加载库

lua -llib -e "name = 'jiangpengyong'"

三、dofile 调试

使用 dofile 函数进行加载,可以立即加载最新编写代码,边写代码边调试

先使用第一点的方式进入交互模式,然后使用以下代码进行加载最新代码

dofile(“需要加载的lua文件”)

请添加图片描述

四、脚本运行 Lua

平常我们运行一个 lua 脚本,都是使用如下的方式运行

lua luaScript.lua

如果想以 Linux 脚本方式运行,例如如下方式:

./luaScript.lua

则需要在 luaScript.lua 文件中加入一些内容,需要在文件的第一行加入如下内容

#!/Users/jiangpengyong/Documents/env/lua-5.4.4/src/lua

#! 是固定的,后面的路径则是你配置的 lua 环境 src 路径下的 lua 文件

请添加图片描述
最后只需要在终端直接运行该文件即可

值得一提,mac 环境下运行脚本要用 ./xxx.lua 而不是直接文件名 xxx.lua

五、写在最后

Lua 项目地址:Github传送门 (如果对你有所帮助或喜欢的话,赏个star吧,码字不易,请多多支持)

本章相关代码传送门

如果觉得本篇博文对你有所启发或是解决了困惑,给个赞或关注我呀,小盆友会继续分享更多的优质文章。

相关文章:

  • TCS34725颜色感应识别模块
  • python学习笔记:基础语法
  • 面试~Synchronized 与 锁升级
  • 【C++学习】C++入门知识(下)
  • 【23秋招c++后端面试技术突围】TCP/IP 之 滑动窗口、Nagle算法和延迟确认
  • .Net Redis的秒杀Dome和异步执行
  • 开学总动员!2022华为开发者大赛等你来挑战!
  • 【WACV2022】DAQ | 首尔大学首次为超分辨率网络提出逐通道分布自适应量化方法,效果显著
  • STM32 Bootloader跳转后不执行程序的问题解决记录
  • 阿里内部人手一份!P8大佬也叫好的 高性能MySQL系列
  • 408数据结构学习强化——常见数据结构定义和算法总结
  • 全栈Python自动化测试学习资料【付费资源、看到即赚到,】
  • Shell 文件目录类(二)
  • 吴恩达机器学习重点记录
  • Pytorch创建多任务学习模型
  • export和import的用法总结
  • k8s如何管理Pod
  • Laravel 菜鸟晋级之路
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • 基于遗传算法的优化问题求解
  • 前端性能优化--懒加载和预加载
  • 听说你叫Java(二)–Servlet请求
  • 想写好前端,先练好内功
  • 移动端高清、多屏适配方案
  • ​LeetCode解法汇总2182. 构造限制重复的字符串
  • ​Spring Boot 分片上传文件
  • #pragma once
  • #pragma 指令
  • #我与Java虚拟机的故事#连载05:Java虚拟机的修炼之道
  • (1)安装hadoop之虚拟机准备(配置IP与主机名)
  • (2)(2.4) TerraRanger Tower/Tower EVO(360度)
  • (floyd+补集) poj 3275
  • (二)c52学习之旅-简单了解单片机
  • (二)springcloud实战之config配置中心
  • (附源码)spring boot北京冬奥会志愿者报名系统 毕业设计 150947
  • (附源码)ssm高校实验室 毕业设计 800008
  • (四)linux文件内容查看
  • (原創) 如何使用ISO C++讀寫BMP圖檔? (C/C++) (Image Processing)
  • ****** 二 ******、软设笔记【数据结构】-KMP算法、树、二叉树
  • .NET Core WebAPI中使用Log4net 日志级别分类并记录到数据库
  • .Net Winform开发笔记(一)
  • .net 中viewstate的原理和使用
  • .pop ----remove 删除
  • ::什么意思
  • @Valid和@NotNull字段校验使用
  • [2016.7.Test1] T1 三进制异或
  • [20161101]rman备份与数据文件变化7.txt
  • [AndroidStudio]_[初级]_[修改虚拟设备镜像文件的存放位置]
  • [AUTOSAR][诊断管理][ECU][$37] 请求退出传输。终止数据传输的(上传/下载)
  • [C#]科学计数法(scientific notation)显示为正常数字
  • [CISCN2019 华北赛区 Day1 Web2]ikun
  • [EULAR文摘] 利用蛋白组学技术开发一项蛋白评分用于预测TNFi疗效
  • [Flutter] extends、implements、mixin和 abstract、extension的使用介绍说明
  • [GN] Vue3.2 快速上手 ---- 核心语法2
  • [go] 迭代器模式