在 lua 脚本中常用的包含某个文件就是 require 函数。

例如:

#!/usr/bin/lua                     // 表明使用的是lua脚本,像shell脚本一样

local http = require("socket.http")

local json = require("luci.json")

有时候会遇到需要的文件查找不到的现象。例如:

/usr/bin/lua: /usr/sbin/test:4: module 'luci.json' not found:
        no field package.preload['luci.json']
        no file './luci/json.lua'
        no file '/usr/share/lua/luci/json.lua'
        no file '/usr/share/lua/luci/json/init.lua'

这时候需要查找相应的路径,是否包含json 或json.lua脚本。

可以编写一个lua脚本打印其包含的路径,如下:

#!/usr/bin/lua

print(package.path)

执行脚本即可。例如:

root@hbg:/# cat /usr/sbin/1111
#!/usr/bin/lua

print(package.path)

root@hbg:/# 1111
./?.lua;/usr/share/lua/?.lua;/usr/share/lua/?/init.lua;/usr/lib/lua/?.lua;/usr/lib/lua/?/init.lua
路径名称是以“;”分割开来的。

上面的路径包含如下:

./?.lua                                       当前路径下的所有.lua脚本

/usr/share/lua/?.lua                  /usr/share/lua下的所有.lua脚本

/usr/share/lua/?/init.lua            /usr/share/lua目录下的所有包含的目录下的init.lua脚本

/usr/lib/lua/?.lua                       /usr/lib/lua下的所有.lua脚本

/usr/lib/lua/?/init.lua                 /usr/lib/lua/目录下的所有包含的目录下的init.lua脚本

luci 中require函数包含的路径的更多相关文章

  1. JS中require函数的警告提示

    在JS中常常使用require函数来引入文件或者路径,不过在使用时需要注意一点,它的参数必须是一串完整的字符串常量或者是由字符常量与变量拼接. (一)require函数的参数为一个变量,如下图所示: ...

  2. PHP中require()文件包含的正确用法

    以前看一些PHP框架源码的时候,很奇怪在文件包含的时候,会用dirname(__FILE__)来拼凑文件路 径,不知道这样做有什么好处,后来终于发现了其中的缘由. 我们来看一个简单的例子: 有a,b, ...

  3. require或include相对路径多层嵌套引发的问题

    require或include相对路径多层嵌套引发的问题   php中require/include 包含相对路径的解决办法 在PHP中require,include一个文件时,大都是用相对路径,是个 ...

  4. PHP中require和include路径问题总结

    1 绝对路径.相对路径和未确定路径 相对路径 相对路径指以.开头的路径,例如 ./a/a.php (相对当前目录) ../common.inc.php (相对上级目录), 绝对路径 绝对路径是以 / ...

  5. 【转】PHP中require和include路径问题总结

    1 绝对路径.相对路径和未确定路径 2. 相对路径: 3. 绝对路径 4. 未确定路径 5. 解决方案 1 绝对路径.相对路径和未确定路径 相对路径 相对路径指以.开头的路径,例如 ./a/a.php ...

  6. php学习笔记6--php中的文件包含 include,require,include_once,require_once

    php中的文件包含 include,require,include_once,require_once 文件包含:是指将一个文件的内容包含进另外一个文件,有利于代码的复用等.php中文件包含指令有4个 ...

  7. php中include包含文件路径查找过程

    首先,“路径”分为三种: 1.绝对路径,以/开头(unix系统)或c:等盘符开头(windows系统). 2.相对路径,以.开头,有./(当前目录)和../(上级目录). 3.其他路径,不是绝对路径和 ...

  8. PHP中文件包含的路径问题

    在程序中当前文件夹下文件路径可以表示为3种:1)绝对路径,2)相对路径,3)直接文件名 例如在/var/www下的a.php:1)/var/www/a.php 2)./a.php 3)a.php 在P ...

  9. nodejs中require的路径是一个文件夹时发生了什么

    node中使用require的时候如果路径是一个文件夹时,或者特殊的情况require('..');require('.'); 这是node实战这本书里说的情况,但是我在node6.9版本中发现不完全 ...

随机推荐

  1. THE DEFINITIVE GUIDE TO DEBUGGING JAVASCRIPT

    FIGURING OUT WHERE THE ERROR COULD BE READ THE CODE USING THE CONSOLE THE CHROME DEV TOOLS THE DEBUG ...

  2. [C#]一个简易的、轻量级的方法并行执行线程辅助类

      一个简易的.轻量级的方法并行执行线程辅助类 在实际应用中,经常要让多个方法并行执行以节约运行时间,线程就是必不可少的了,而多线程的管理经常又是一件头疼的事情,比如方法并行执行异步的返回问题,方法并 ...

  3. HTTP method constants

    HTTP method constants ngx.HTTP_GET ngx.HTTP_HEAD ngx.HTTP_PUT ngx.HTTP_POST ngx.HTTP_DELETE ngx.HTTP ...

  4. python中\r的意义及用法

    \r的意义 \r 表示将光标的位置回退到本行的开头位置 \b表示将光标的位置回退一位 在python里print会默认进行换行,可以通过修改参数让其不换行 (1) python2中可以在print语句 ...

  5. JS定义函数

    一.定义函数的方法 (1)函数声明 (2)函数表达式 二.函数声明方法定义函数 function functionName(arg0, arg1, arg2) { // 函数体 } (1)FireFo ...

  6. js apply使用

    js中apply方法的使用 1.对象的继承,一般的做法是复制:Object.extend prototype.js的实现方式是:  Object.extend = function(destinati ...

  7. HTML背景图片的相对位置设置

    链接:https://jingyan.baidu.com/article/ff42efa9c22b11c19e220200.html 重点:background-attachment,    back ...

  8. [C++]头文件<algorithm>

    本博文仅示例一些常用的函数: sort.for_each. 1. sort /* STL - <algorithm> - sort template< class RandomIt, ...

  9. 搭建单机版的FastDFS服务

    一,原理讲解 FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的问题.特别适合以文件为载体的 ...

  10. 安装Vmware并破解

    1. 先下载Vmware安装包 链接:http://pan.baidu.com/s/1hsjCKgk 密码:c1o6 2. 解压缩 3. 运行VMware-workstation-full-10.0. ...