体验平台简介面向开发者和中小企业的一站式全云开发平台。打开浏览器进行开发、调试、上线。你测量的就是你得到的。结合Serverless模式,重新定义云原生时代的研发方法论。旨在降低开发者的启动成本和中小企业的启动成本和运营成本,以及突发流量带来的运维风险。阿里云体验实验室地址:https://developer.aliyun.com/adc/labs/教程简介本教程介绍Linux系统中常用的文件目录管理和文件权限管理命令。场景体验场景内容选自阿里云体验实验室。本场景将提供一个配置了AliyunLinux2的ECS实例(云服务器),您可以参考本教程学习Linux系统中常用的文件目录管理和文件权限管理命令。阿里云AliyunLinux2ECS实例资源:https://developer.aliyun.com/adc/scenario/a12055b0e9e84e5692b05ae25d377ec0云服务器ECS云服务器(ElasticComputeService,简称ECS)是一款性能优良、稳定、可靠、弹性扩展IaaS(基础设施即服务)级别的云计算服务。云服务器ECS为您省去了购买IT硬件的前期准备工作,让您像使用水、电、天然气等公共资源一样方便高效地使用服务器,实现计算的开箱即用和弹性伸缩资源。阿里云ECS不断提供创新的服务器来满足各种业务需求,助力您的业务发展。AliyunLinux2AliyunLinux2是阿里云推出的下一代Linux发行版。它为云上的应用环境提供Linux社区的最新增强功能。深度优化。AliyunLinux2OS镜像可以运行在阿里云的全规格系列VM实例上,包括ElasticBareMetalServers(Shenlong)。Directory1:文件目录管理命令tree命令说明:tree命令用于将目录的内容以树状图的形式列出。树命令没有内置到系统中。使用tree命令需要执行以下命令安装:yuminstall-ytree命令使用示例:tree/usr/share/wallpapers/命令输出:ls命令说明:ls命令用于显示指定的工作内容的目录。命令格式:ls[参数][目录名]。参数说明-a显示所有文件和目录(包括隐藏文件)-l列出文件权限、所有者、文件大小等详细信息(ll相当于ls-l)-r倒序列出文件(默认按英文字母顺序排列)order)-t按照创建时间的先后顺序列出文件-R递归遍历目录下的文件命令用法举例:查看当前目录下的所有文件(包括隐藏文件)。ll-a命令输出:pwd命令描述:获取当前工作目录的绝对路径。命令用法示例:cd命令说明:cd命令用于切换工作目录。命令用法示例:在路径表示中:半角句点(.)表示当前目录,例如路径./app/log相当于app/log。两个半角句号(..)表示上级目录。比如/usr/local/../src这个路径就相当于/usr/src,local和src目录在同一层级。cd命令的默认参数是~,符号~代表当前用户的家目录,即root用户登录时,命令cd、cd~和cd/root作用相同。touch命令说明:touch命令用于修改文件或目录的时间属性,包括访问时间和更改时间。如果该文件不存在,系统将创建一个新文件。命令格式:touch[参数][文件]。参数说明:参数说明-c如果指定的文件不存在,则不创建新文件-r使用参考文件的时间记录-t设置文件的时间记录命令示例:创建两个空文件。修改demo1.txt的时间记录为当前系统时间。将demo2.txt的时间记录更新为与demo1.txt的时间记录一致。mkdir命令说明:mkdir命令用于创建一个新的子目录。-p参数确保目录名存在,如果不存在则创建一个新目录。命令用法示例:新建目录a/b/c/d,使用tree命令查看创建的目录结构。rm命令说明:rm命令用于删除一个文件或目录。命令格式:rm[参数][文件]。参数说明:参数说明-i删除前一一询问确认-f不确认直接删除-r删除目录下所有文件命令用法举例:不确认直接删除文件。无需确认直接删除目录a及其下的所有子目录和文件。cp命令说明:cp命令主要用于复制文件或目录。命令格式:cp[参数][源文件][目标文件]。参数说明:参数说明-d复制时保留链接-f覆盖已有的目标文件,不提示-i覆盖前询问-p除了复制文件内容外,还要复制文件的修改时间和访问权限newfile中-r复制目录和目录中的所有项命令用法举例:将目录c/d中的所有内容复制到目录a/b中。mv命令说明:mv命令用于重命名文件或目录,或将文件或目录移动到另一个位置。命令格式:mv[参数][源文件][目标文件]参数说明:参数说明-i如果指定目录已经有同名文件,会先询问是否覆盖旧文件-f如果目标文件已经存在,则直接使用overwrite命令示例:将文件名由a.txt更改为b.txt。将c目录移动到a/b/c/d/。将当前目录的所有内容移动到/tmp目录。mv./*/tmprename命令说明:rename命令通过字符串替换的方式批量更改文件名。rename命令在C语言和Perl语言中有两个版本。这里介绍C语言版本的rename命令,不支持正则表达式。命令用法举例:将当前目录下所有文件名中的字符串demo修改为大写字符串DEMO。将当前目录下所有.txt文件的后缀改为text。目录二:文件权限管理文件权限管理ls命令可以查看Linux系统中文件、目录和设备的权限。ls-l/boot/上面的ls-l命令显示的第一列是文件权限信息,一共11个字符,分为5部分。第一位表示归档类型,d表示目录,-表示普通文件。第2到第4位数字表示当前用户的权限(所有者权限)。第5到7位代表同一用户组的用户权限(属于组权限)。第8到10位代表不同用户组的用户权限(其他用户权限)。第11位是半角句点.,表示SELinux安全标签。每组用户权限为三位数字,rwx分别表示读、写、执行权限,对应的八进制表示为4、2、1。例如efi目录的root用户权限为drwxr-xr-X。该目录对root用户具有读、写、执行的所有权限。此目录对根组中的其他用户具有读取和执行权限。该目录对其他用户具有读取和执行权限。因此权限表示对应八进制权限表示:所有者权限:4+2+1=7。群组权限:4+1=5。其他用户权限:4+1=5。即755。chmodchmod命令用于修改文件权限模式,-R参数递归修改子目录和文件。命令用法示例:1.新建一个名为hello.sh的shell脚本,它将输出HelloWorld。使用ll命令可以看到新建的脚本没有执行权限,其权限用八进制表示为644。echo"echo'HelloWorld'">hello.shll2.在hello.sh文件中添加所有者的执行权限。chmodu+xhello.shll3.撤销hello.sh文件所有者的执行权限。chmodu-xhello.shll4.修改hello.sh文件的权限为八进制的744。chmod744hello.shll5.使用bash命令解释器执行hello.sh脚本文件。/bin/bashhello.sh其中,u+x表示增加所有者的执行权限,u表示所有者,g表示组,o表示其他,a表示所有用户。chownchown命令修改文件的所有者和所属组;-R参数递归修改子目录和文件;ls-l命令显示的第三列和第四列是文件的所有者和组信息。命令用法示例:1、新建一个文本文件test.txt,使用ll命令查看文件的所有者和所属组为root。whoami命令可以查看当前Shell环境登录的用户名。whoamitouchtest.txtll2.创建两个用户。useraddtestuseraddadmin3.修改test.txt文件的owner用户进行测试。chown测试test.txtll4。将test.txt文件的所有者和所属组修改为admin。chownadmin:admintest.txtllchgrpchgrp命令用于修改文件组。命令用法示例:将test.txt文件的属性组改为root。chgrproottest.txtll以上就是《Linux命令介绍-文件和权限》的全部内容。更多体验场景请前往开发者实验室:https://developer.aliyun.com/adc/labs/
