Linux - 文件目录一:文件 与 文件夹 文件一般是1个独立的东西,可以通过一些特性的工具进行打开,并且其中不能再包含出来文字以外的东西 文件夹可以在其中包含其他文件的东西 为何要讲文件?1.在Linux中,近乎一般以上都是对文件的操作 2.Linux本身也是一个基于文件形式表示的操作系统 3.在Linux中,一切皆文件(就像在Python中,一切皆对象)在Win
1.查看文件/目录权限及归属如果有权限警告,从目录最低级到高级一层一层检查权限如果文件有读权限,而上级目录没有读权限,则无法对该文件进行读操作创建、删除文件、改文件名,实质是修改了目录,要查看文件上一级的目录的属性有没有写权限,而不应是查看文件的属性(能否创建文件,删除文件,改文件名,需要查看目录的权限) ll-d 查看目录自身属性对于文本文件和目录的读写执行操作不同 第一个'-' 表示文件类型
相关知识通过以上两关的学习,我们已经学会了使用locate命令查询系统中的文件/目录,使用which和whereis命令来定位可执行文件的位置。接下来让我们一起学习查询文件/目录的最后一个命令-find。find命令与locate命令相比各有各的优缺点,locate命令的优点就是查找速度比find命令快的多,但是缺点也比较明显,locate命令无法查找最新添加的文件/目录以及会查找出来已经过期的文
在游戏开发中会经常使用到lua作为游戏逻辑层的脚本语言,各种优势就不说了,虽然平时用的比较多,但对lua语言本身和内部的一些实现并不是很了解,让我们先从luarequire入手来一探require的各种用法吧。require其实类似与C/C++中的#include,就是加载一个指定名称的模块进来,该模块可以来自于lua,也可能来自于C/C++,在lua虚拟机启动时,默认会给我们预先加载好一些模块
转载 2024-02-17 16:53:50
902阅读
1.luarequire返回对象mu.luacmu={}mu.constant="这是一个常量"functionmu.func1()io.write("这是一个公有函数!\n")endreturnmutest_mu.luacrequire("mu")print(mu.constant)mu.func1()测试命令:luatest_mu.lua测试结果:这是一个常量这是一个公有函数!2.luareq
原创 2022-05-15 16:43:30
815阅读
lua5.1之后增加了module函数,本文通过一系列测试代码来阐述这个函数的作用通常情况下,我们调用另一个Lua代码文件一般都会使用require函数,比如:上面的代码执行结果,输出 Func1100Func2null我们得出以下的结论1.Func1属于JCTest,需要显示表达出来。2.require返回的是一个table。3.JCTest这个table必须要return 
转载 2024-03-20 09:00:46
248阅读
前言从Lua5.1版本开始,就对模块和包添加了新的支持,可使用require和module来定义和使用模块和包。require用于使用模块,module用于创建模块。简单的说,一个模块就是一个程序库,可以通过require来加载。然后便得到了一个全局变量,表示一个table。这个table就像是一个命名空间,其内容就是模块中导出的所有东西,比如函数和常量,一个符合规范的模块还应使require
转载 2024-05-08 16:34:17
154阅读
一、目录结构目录也是一个文件,它的唯一功能是用来保存文件及其相关信息。所有的文件,包括普通文件、设备文件和目录文件,都会被保存到目录中。1、绝对路径和相对路径 /Linux 的目录有清晰的层次结构,/ 代表根目录,所有的目录都位于 / 下面;文件在层次结构中的位置可以用路径来表示。如果一个路径以 / 开头,就称为绝对路径;它表示当前文件与根目录的关系。举例如下:/etc/passwd/users/
整整的花了一个下午的时候,才在lua中调用了动态链接库。比起其他脚本语言,lua的调用方式算是比较繁琐的,但是lua的编程思想非常的统一,即lua和C之间的传值都是通过栈进行的,目前为止我还没有深入的去了解这个“栈”,但是这并不妨碍去使用”栈“。当我们在一个空的工程中写下几个C/C++的函数,然后把属性类型设置为“动态链接库”以后,编译虽然成功了,DLL也产生了,但是我们得到的DLL是一个没有价值
目录一、扩展库 - Lua扩展库的运用二、扩展库 - 库加载机制luaL_requiref我们前面几章节讲过,Lua的函数调用有三种类型:C语言闭包函数,C 扩展库API和Lua语言(二进制操作码)。这一章我们主要讲解一下Lua的扩展库Require的实现。一、扩展库 - Lua扩展库的运用我们看几个Lua的示例,一般情况下格式都是:库名称.方法名称(例如:string.find)//字符串库 s
转载 2024-03-25 10:43:18
267阅读
前言从Lua5.1版本开始,就对模块和包添加了新的支持,可是使用require和module来定义和使用模块和包。require用于使用模块,module用于创建模块。简单的说,一个模块就是一个程序库,可以通过require来加载。然后便得到了一个全局变量,表示一个table。这个table就像是一个命名空间,其内容就是模块中导出的所有东西,比如函数和常量,一个符合规范的模块还应使require
转载 2024-03-26 16:00:46
535阅读
# Python上级目录上级目录 在Python中,我们经常会遇到需要访问上级目录的情况。有时候,我们只需要访问上级目录,但有时候我们需要访问上级目录上级目录。在本文中,我们将探讨如何使用Python来获取上级目录上级目录,并给出相应的代码示例。 ## 获取上级目录上级目录 在Python中,可以使用`os`模块来获取当前脚本所在目录上级目录,通过两次调用`os.path.dirn
原创 2024-01-09 10:39:49
78阅读
lua中写个试验性质的小程序可能只要一个脚本文件就搞定了,不过一旦程序上了一定规模,为了方便阅读和维护,分开多个文件就很有必要了。那么如何才能在一个lua脚本文件中调用另一个文件呢?这个就是今天的研究课题。 首先出场的就是dofile。我们知道一个lua文件是作为一个代码块(chunk)存在的,其实质就是一个函数,那么最简单的,我在一个外部lua文件中写一段代码,然后在主lua文件中用d
当我在工作中使用lua进行开发时,发现在lua中有4种方式遍历一个table,当然,从本质上来说其实都一样,只是形式不同,这四种方式分别是: 1. forkey, value inpairs(tbtest) do 2. XXX 3. end 4. 5. forkey, value inipairs(tbtest) do 6. XXX 7. end 8. 9. fori=1,
lLua提供高级的require函数来加载运行库。粗略的说require和dofile完成同样的功能但有两点不同:1.require会搜索目录加载文件2.require会判断...
转载 2015-05-29 11:09:00
575阅读
2评论
任何一门语言在大规模应用阶段,必然要经历拆分模块的过程。便于维护与团队协作,与java走的最近的dojo率先引入加载器,早期的加载器都是同步的,使用document.write与同步Ajax请求实现。后来dojo开始以JSONP的方法设计它的每个模块结构。以script节点为主体加载它的模块。这个就是目前主流的加载器方式。不得不提的是,dojo的加载器与AMD规范的发明者都是james Burke
相信大家在lua中都用过require。为了达到代码复用和结构化的目的,各种语言都有require机制。luarequire看似简单,其实里面有很多玄机。一  require从哪里加载模块文件从虚拟机的path,cpath等全局变量中。虚拟机有默认的值,在变量package.path和package.cpath中。例如我打印的path,cpath分别为:path : /usr
转载 2024-05-24 23:24:44
375阅读
参考文档  --- 笔记:Lua/JS尾调用   http://www.ruanyifeng.com/blog/2015/04/tail-call.html Lua的闭包详解   (和JS一吊样)Lua中的元表与元方法(_index与_newIndex区别) qucik luarequire和import的区别     2种
转载 2024-04-15 19:46:42
109阅读
浏览器的后退按钮使得我们能够方便地返回以前访问过的页面,它无疑非常有用。但有时候我们不得不关闭这个功能,以防止用户打乱预定的页面访问次序。本文介绍网络上可找到的各种禁用浏览器后退按钮方案,分析它们各自的优缺点和适用场合。    一、概述         曾经有许多人问起,“怎样才能‘禁用’浏览器的后退按钮?”,或者“怎样才能防止用户点击后
最近在参与一个基于C++/LUA的项目, 用LUA实现单元测试时需要在测试代码内对单元测试库文件进行加载, 目的是希望做到在任何测试文件内都可以运行测试, 而不是必须在特定的入口执行. 但是使用LUA内置require函数加载会失败, 因为其是lua实现module功能的一个函数所以会有一些和模块相关的特性, 在定制文件加载目录时会受到一些局限(比如想加载上层
转载 2024-06-14 06:09:06
172阅读
  • 1
  • 2
  • 3
  • 4
  • 5