首页 > 其他分享 >06-文件目录管理

06-文件目录管理

时间:2024-04-10 15:25:35浏览次数:13  
标签:文件 06 管理 days 命令 6.5 文件目录 权限 目录

6.1 Linux文件系统的架构

Linux系统主要目录及其内容

目录 内容
/bin 构建最小系统所需要的命令(最常用的命令)
/boot 内核与启动文件
/dev 各种设备文件
/etc 系统软件的启动和配置文件
/home 用户的主目录
/lib C编译器的库
/media 可移动介质的安装点
/opt 可选的应用软件包(很少使用)
/proc 进程的映像
/root 超级用户root的主目录
/sbin 和系统操作有关的命令
/tmp 临时文件存放点
/usr 非系统的程序和命令
/var 系统专用的数据和配置文件

6.3 建立文件和目录

6.3.1 建立目录:mkdir

-p选项,用于完整地创建一个子目录结构。

6.3.2 建立一个空文件:touch

  • touch命令建立的文件是空文件(也就是不包含任何内容的文件)
  • touch命令的另一个用途是更新一个文件的建立日期和时间

6.4 移动、复制和删除

6.4.1 移动和重命名:mv

  • -i选项用于提示同名文件替换
  • -b选项在移动文件前,首先在目标目录的同名文件的文件名后加一个“~”,从而避免这个文件被覆盖

6.4.2 复制文件和目录:cp

  • -i-b选项同mv
  • -r选项将子目录连同其中的文件一起复制到另一个子目录下

6.5 文件和目录的权限

6.5.2 需要设置哪些权限

可以赋予某类用户对文件和目录享有3种权限:读取(r)、写入(w)和执行(x)。

6.5.3 查看文件和目录的属性

例子:

$ ls -l /bin/login
-rwxr-xr-x 1 root root 38096 2008-11-13 14:54 /bin/login
  • 第1个字段的第1个字符表示文件类型,在上例中是“-”,表示这是一个普通文件
  • 接下来的9个字符应该被这样断句:rwx、r-x、r-x,分别表示属主、属组和其他人所拥有的权限。如果某个权限被禁用,那么就用一个短划线“-”代替
  • 第3个和第4个字段分别表示文件的属主和属组
  • 紧跟着3组权限位的数字表示该文件的链接数目
  • 最后的4个字段分别表示文件大小(38096字节)、最后修改的日期和时间,以及这个文件的完整路径

6.5.4 改变文件所有权:chownchgrp

chown [OPTION]... [OWNER][:[GROUP]] FILE...

chown命令提供了-R选项,用于改变一个目录及其下所有文件(和子目录)的所有权设置。

6.5.5 改变文件权限:chmod

chmod用于改变一个文件的权限,这个命令使用“用户组+/-权限”的表述方式来增加/删除相应的权限。具体来说,用户组包括了文件属主(u)、文件属组(g)、其他人(o)和所有人(a),而权限则包括了读取(r)、写入(w)和执行(x)。

  • 下面这条命令增加了属主对文件days的执行权限
    $ chmod u+x days
  • 下面这条命令删除所有人(属主、属组和其他人)对days的执行权限
    $ chmod a-x days
  • 下面这条命令赋予属主和属组的读取/写入权限,而仅赋予其他用户读取权限
    $ chmod ug=rw,o=r days
  • 下面这条命令将其他人的权限设置为和属主的权限一样
    $ chmod o=u days

6.5.6 文件权限的八进制表示

八进制、二进制、文件权限的对应关系

八进制 二进制 权 限 八进制 二进制 权 限
0 000 --- 5 101 r-x
1 001 --x 6 110 rw-
2 010 -w- 7 111 rwx
3 011 -wx
4 100 r--

在实际使用中,只要记住1代表x、2代表w、4代表r,然后简单地做加法就可以了。

6.6 文件类型

6.6.1 查看文件类型

Linux中的文件类型

文件类型 符 号 文件类型 符 号
普通文件 - 本地域套接口 s
目录 d 有名管道 p
字符设备文件 c 符号链接 l
块设备文件 b

6.7 输入输出重定向和管道

6.7.1 输出重定向

如果ls_out文件不存在,那么输出重定向符号“>”会试图建立这个文件。如果ls_out文件已经存在了,那么“>”会删除文件中原有的内容,然后用新内容替代。如果要保留原来文件中的内容,应该使用输出重定向符号“>>”。

$ date > date_out
$ cat date_out
2008年12月10日 星期三 20:43:43 CST
$ uname -r >> date_out
$ cat date_out
2008年12月10日 星期三 20:43:43 CST
2.6.24-21-generic

6.7.2 输入重定向

用户可以选择任意一个单词作为立即文档的分隔符,像EOF、END、eof等都是不错的选择,只要可以确保它不是正文的一部分。

$ cat << END > hello
> Hello World!
> Bye
> END

这条命令首先让cat命令以立即文档的方式获取输入,然后再把cat的输出重定向到hello文件。查看hello文件,应该可以看到下面这些内容。

Hello World!
Bye

6.7.3 管道

通过一根竖线“|”,将一条命令的输出连接到另一条命令输入。下面这条命令显示了如何在文件列表中查找文件名中包含某个特定字符串的文件。

$ ls | grep ay
days
hard_days
mplayer
mplayer~
my_days

标签:文件,06,管理,days,命令,6.5,文件目录,权限,目录
From: https://www.cnblogs.com/goldenretriever/p/18126079

相关文章

  • 让 GitHub 仓库的代码占比统计中包含 Markdown 文件 开发 Git 命令行 个人知识管理 知
    tags:网站/GitHub开发/Git命令行/git个人知识管理/知识库知识领域/文档工程让GitHub仓库的代码占比统计中包含Markdown文件GitHub是一个基于web的版本控制和协作平台,主要用于存储、管理和分享开源代码和项目。它支持Git作为唯一的版本库格式,使得多个开发者可......
  • 16:00面试,16:06就出来了,问的问题有点变态。。。
    从上一家出来,没想到在另一家公司又寄了。到这家公司开始上班,加班是每天必不可少的,看在钱给的比较多的份上,就不太计较了。没想到3月一纸通知,所有人不准加班,加班费不仅没有了,薪资还要降40%,这下搞的饭都吃不起了。还在有个朋友内推我去了一家互联网公司,兴冲冲见面试官,没想到一......
  • ABP-VNext 用户权限管理系统实战04---多数据库支持、批量插入
    系统用的.net core,数据库映射工具为efcore,可以支持多数据库。一、支持多数据库1、扩展AbpDbContextOptions类 需要引入的类 2、服务中注入 二、批量插入实现EFCORE批量插入接口IEfCoreBulkOperationProvider,使用杨中科的包:https://github.com/yangzhongke/Zack.EF......
  • 在 PowerShell 中,您可以使用一系列命令来管理和操作映像ESD(Electronic Software Downl
    在PowerShell中,您可以使用一系列命令来管理和操作映像ESD(ElectronicSoftwareDownload)文件。这些命令可以让您处理、部署和维护Windows映像。以下是一些常用的PowerShell命令:Add-WindowsImage:将Windows映像添加到WIM或VHD文件中。powershellCopyCodeAdd-Windo......
  • PowerShell中管理和操作Windows映像,允许你执行各种任务,如挂载、修改、添加、移除、更
    管理和操作映像(如Windows映像)的PowerShell命令主要涉及到映像的获取、部署、修改等操作。以下是一些常用的PowerShell命令,可用于管理和操作映像:Get-WindowsImage:这个命令用于获取有关Windows映像的信息,包括版本、架构、安装状态等。powershellCopyCodeGet-WindowsImage-I......
  • power shell命令提供了对离线Windows映像进行管理和操作的功能,包括挂载、卸载、修改属
    以下是一些用于管理离线映像的PowerShell命令:Mount-WindowsImage:用于将Windows映像文件挂载到指定的目录以进行修改。powershellCopyCodeMount-WindowsImage-ImagePath"C:\path\to\image.wim"-Path"C:\path\to\mount"-Index1Dismount-WindowsImage:用于卸载之前......
  • 开源相机管理库Aravis例程学习(一)——单帧采集single-acquisition
    目录简介源码函数说明arv_camera_newarv_camera_acquisitionarv_camera_get_model_namearv_buffer_get_image_widtharv_buffer_get_image_height简介本文针对官方例程中的第一个例程:single-acquisition做简单的讲解,并简单分析其中调用的arv_camera_new,arv_camera_acquisition,ar......
  • 智慧校园平台解决方案-收费管理系统
    收费管理系统简介: 学生收费管理系统与教务系统​​​​​​​,学工系统实现数据互通;实现网站支付功能,实现学生在家,在宿舍,只要能够上网即可通过支付宝,微信,网银对产生的订单进行支付。服务网大厅中的web网上查询使得数据查询更加便利,财务负责人通过平台查看学生收费情况,院系老......
  • 免费分享Springboot+Vue的停车场管理系统源码,真酷啊
    今天给大家分享一套基于Springboot+Vue的停车场管理系统源码,在实际项目中可以直接复用。(免费提供,文末自取)一、系统运行图1、登陆页面2、车位管理3、车辆进出管理设计一个SpringBoot+Vue的停车场管理系统时,需要注意以下细节:1.用户权限管理:确保系统具有不......
  • C语言中的结构体:组织与管理数据的方式》 标签: C语言
    结构体结构体的声明结构体是一种复合数据类型,它允许我们将多个不同类型的数据项组合成一个单一的实体。这与其他基本数据类型(如整数、浮点数、字符等)不同,后者通常只能存储单一类型的数据。类比:数组:一组相同元素的集合。结构的声明结构的声明使用struct关键字,后跟结构......