有一句话: linux上一切皆文件

1文件系统

操作系统3大模块:进程管理,内存管理,文件系统

1.1定义:文件系统是操作系统在存储设备上组织管理文件的方法。

1.2不同操作系统文件系统不同,简单来说linux的文件windows不能直接使用,常见操作系统对于文件系统如下:

linux:EXT4(索引是文件系统)

windows:NTFS

U盘:FAT32

1.3文件系统与磁盘分区格式化

1.4文件系统不同数据放在不同区块,linux文件系统分为3个区块:superblock,block,inode,各区块存放数据如下:

注意:一个文件对应唯一的inode编号,ls -i为查看文件编号命令

2文件分类

目录文件(d):相当于windows上文件夹

管道文件(p):用于进程间通信

链接文件(-):相当于windows的快捷方式

设备文件:又分为:字符设备文件(c,键盘鼠标等),块设备文件(b,u盘等),套接字(s,用于网络,很少用)

普通文件:上面四类以外的文件,如.c .cpp .h .txt

注意:linux文件有后缀,但不以后缀来区分文件类型(与windows的区别)

后缀作用:用户辨别文件的大概类型;编译器根据不同后缀决定解析文件的方式

3文件的权限:

一个文件可操作的用户分为:文件所有者,同组用户,其他用户

4查看文件类型和权限命令:

文件有8个属性:文件类型,文件权限,链接数,所属者名,组用户名,文件大小,最后修改时间,文件名

ls -l:显示当前位置下的详细信息(包含文件类型,权限)

上图属性2为文件权限共九位字母,以三位为单位划分为3部分,从左往右为所有者权限,同组用户权限,其他用户权限,字母含义(权限值):

r(读)

w(写,包括修改)

–(无权限)

x(对普通文件为执行权限,对目录文件为进入权限)

上图ls -l详细文件属性链接:https://blog.csdn.net/qiuxiaonao/article/details/106737985

5文件操作命令

最常用文件类型:普通文件和目录文件,文件操作命令主要以这两种文件为主

5.1创建文件:

普通文件: touch + 文件名

目录文件: mkdir + 文件名

注意:①文件名可有:字母,数字,下划线,英文的点。但不可出现空格,有空格系统默认创建两个文件。

②若有扩展名,需在创建时指定(普通文件一般有扩展名)

③英文大小写有区别

5.2删除文件

普通文件:rm+文件名

目录文件:rmdir +文件名:只能删空目录

rm -r +文件名:可删非空目录

rm -rf +文件名:删除且不提示(有的删除有提示“是否确定删除”)

5.3拷贝

普通文件:cp+ 源文件路径+文件名+目的路径(+新的文件名),新的文件名可省略,省略默认原文件名

目录文件: “cp -r”+源文件路径+目录名+目的路径

注意:①没有给源文件路径默认为当前目录下

②若目的路径中已经有拷贝文件,linux中直接覆盖(对比windows会提示覆盖还是跳过)

③要拷贝到当前目录下目的路径用“ . ”

5.4剪切(移动)

普通文件与目录文件一样:mv +源文件路径+文件名+目的路径(+新的文件名)

5.5重命名

普通文件与目录文件:mv + 源文件路径+ 文件名+源文件路径+新文件名(相当于剪切到原来位置并改名)

5.6修改属性

文件属性有:文件类型,文件权限,链接数,所属者名,组用户名,文件大小,最后修改时间,文件名

其中可以修改的属性有:文件权限,所属者,组用户和文件名4个

5.6.1修改所属者

普通文件和目录文件:chown + 新所有者名 + 文件名

注意:只有root用户有权限执行该命令,若普通用户输入该命令系统提示不被允许,如下:

5.6.2修改组用户

普通文件和目录文件(只有root用户有权限执行该命令):chgrp + 新组用户名 + 文件名

5.6.3修改权限

9位3组权限,u位所有者权限,g位组用户权限,o位其他用户权限如下:

注意:a代表3组所有权限

修改权限方法:

①字符设定法

chmod + “u/g/o/a” “+/-/=” “rwx子集 ”+文件名

例1:abc1文件去掉所有者写权限命令为:

chmod u-w abc1

例2:给abc1所有者加上写权限且去掉组用户读权限

chomd u+w,g-r abc1

例3:abc1 所有者权限为可读可写

chmod u=rw abc1

②数字设定法(9位每一位用0代表无权限,1代表有权限,换算为2进制,3组每组不同二进制结果代表不同权限设置)

命令:chmod +“第一组数字”第二组数字“”“第三组数字”+文件名

如:chmod 641 abc1代表把文件abc1的所有者权限为110即rw-,组用户权限为100即r–,其他用户权限为001即–x。

5.6.4创建文件时的权限(掩码)

在umask为000的情况下普通文件默认权限为666,目录文件为777。而linux的umask值默认为0002(不看第一个0,即002),为了凑666和777,则创建普通文件时的权限为664,目录文件为775。修改后umask值后,新建文件权限也会变化来凑666和777

查看掩码命令:umask,显示的第一个数字0不看,后三个数字为权限二进制值

修改掩码命令: umask +数字

注意:修改掩码只对普通文件有效,对目录文件无效

5.7文件搜索

find+路径+选项+条件

常用选项有:

-name:以名字搜索

-user:用户名

-group:组名

-size :大小(-size + “+/-”(指大于/小于) + 数字 + 单位(b/k/M/G))

-mtime + “+/-” + 时间(单位为天):几天内有修改的文件

如:在家目录下搜索名字含“.c”的文件:

find ~ -name “*.c ” (“ * ”为通配符,需要用双引号将含通配符部分包括起来)

搜索同时还可以再过滤(“|”),例如:

find ./dir2020 -size -100k | grep c 指的是

在当前目录下的dir2020文件中搜索大小小于100k并且名字含c的文件

5.7文件编辑

5.7.1命令:

vim + 文件名(普通文件)

注:①也可以用vi,下图为查看快捷方式(alias命令)可看出vi=vim

②文件名若为目录文件,执行结果看不懂

5.7.2进入vim编辑有三种模式:

命令行模式: 使用 Vim 编辑文件时,默认处于命令模式。此模式下,可使用方向键(上、下、左、右键)或 k、j、h、i 移动光标的位置,还可以对文件内容进行复制、粘贴、替换、删除等操作。

下图处于命令模式:

插入模式(输入模式):Vim 可以对文件执行写操作,类似于在 Windows 系统的文档中输入内容。(页面左下角有–INSERT–字样)

末行模式:又叫编辑模式用于对文件中的指定内容执行保存、查找或替换等操作

模式切换:

注:不知道自己处于什么模式时,可以按一次 Esc 键返回命令模式。如果你多按几次 Esc 键后听到"嘀————"的声音,则代表你已经处于命令模式了。

移动光标:上下左右键和hjkl键(后者不可在插入模式应用)

5.8查看文件

more+文件名:显示内容的一页在终端页面(回车显示剩余内容,q退出)

cat+文件名:显示全部内容在终端

less+文件名:输入命令显示文件内容(不在终端),q退出后终端只有命令不显示文件内容

head -数字num 文件名:显示文件前num行

tail -数字num 文件名:显示文件后num行

5.9文件压缩与解压

5.9.1压缩:

第一步:打包

tar cf xxxx.tar 需要打包的所有文件名

c指的是创建,f指目标为文件而不是设备等

第二步:压缩

gzip xxx.tar ,执行后形成压缩文件:xxxx.tar.gz

5.9.2解压

第一步:解压

gzip -d xxxx.tar.gz

第二步:释放(解包)

tar xf xxx.tar

注:tar命令的选项:

c:创建,

x:释放,

f:目标为文件而不是设备,

v:显示详细过程,

t:只查看包中内容有哪些文件,并不释放,z:GUN版本加入 ,tar的z同时有压缩和解压功能:

(即 xxx.tar.gz 和 xxx.tgz 均为压缩文件)

举例:

6.cat命令

cat filename :显示文件内容

cat a.c + b.c:a.c和b.c文件合并

cat > hello.c 再输入内容(每行回车,将本行保存至文件。没有回车最后一行输入内容未录入)以ctrl+c结束则hello.c内容为输入内容

linux不同用户移动文件系统,第三节 linux:文件系统以及文件操作命令相关推荐

  1. linux 新用户 界面登录,如何在Linux系统登录界面加入个性化提示信息

    如何在Linux系统登录界面加入个性化提示信息 Linux字符界面看久了容易乏味,如果在登录时加点个性化显示看着也比较舒服,下面小编就给大家介绍下如何在Linux系统登录界面加入个性化提示信息,一起来 ...

  2. linux普通用户开不了端口,Linux中如何让普通用户使用小于1024的端口

    在Linux系统中,一般情况下,小于1024的端口是不对没有root的Linux普通用户开放的.但是还是有一些技巧能够让没有root的用户使用小于1024的端口的.本文就来介绍一下Linux中如何让普 ...

  3. linux ftp用户指定多个目录,linux ftp服务器下用户限制目录的方法

    我们使用服务器都要站在安全方面进行考虑,有必要将ftp服务下的用户限制在适当的范围内,那么linux ftp服务器下用户限制目录的方法有哪些呢?一起跟着爱站技术频道小编的步伐来了解一下吧! linux ...

  4. linux创建用户和密码的命令,linux命令创建和修改用户及密码

    作者: linux下创建用户 1.添加ftp用户 useradd ftpname -d /home/ftp passwd ftppwd 以下操作都以root权限进行: service vsftpd s ...

  5. linux删除用户所有信息_如何在Linux上删除用户(以及删除所有跟踪)

    linux删除用户所有信息 Fatmawati Achmad Zaenuri/ShutterstockFatmawati Achmad Zaenuri / Shutterstock Deleting ...

  6. suse linux 单用户,如何在 SUSE 12 Linux 中进入单用户模式?

    原标题:如何在 SUSE 12 Linux 中进入单用户模式? 编译自: https://kerneltalks.com/howto/how-to-enter-single-user-mode-in- ...

  7. linux新用户登陆密码,如何强制Linux用户在第一次登录时更改初始密码?

    在多用户Linux环境下,创建使用某个随机默认密码的用户帐户是标准做法.之后在成功登录后,新用户可以将默认密码更改成自己的密码.出于安全方面的原因,常常建议"迫使"用户在第一次登录 ...

  8. linux中用户的权限是什么,linux中用户权限设置与更改相关介绍(上)

    不管是在生活中还是在工作中,我们都会经常碰到关于电脑权限方面的一些问题.现在介绍一下在linux系统中关于如何设置和管理用户的权限问题,介绍基本但很重要的命令. 在Linux中,权限分为三大类:基本权 ...

  9. linux中用户与组的概念,Linux用户和组的概念

    linux下面角色分类 超级用户 默认root 普通用户 www ftp 虚拟用户 无法登录系统,bin adm nobody 用户和组的关系 一对一 一对多 多对一 多对多 用户的配置文件 /etc ...

最新文章

  1. c语言fsetpos是什么,fsetpos - [ C语言中文开发手册 ] - 在线原生手册 - php中文网
  2. wxWidgets:wxEventFilter类用法
  3. [css] 请举例说明伪元素 (pseudo-elements) 有哪些用途?
  4. Docker中快速安装Mysql
  5. mini_Xception架构
  6. hashmap是线程安全的吗?怎么解决?_线程安全及三种解决方案
  7. 第4.17章读书笔记
  8. 该内存不能为read解决办法
  9. python发音1001python发音-python——字符串问题总结
  10. 我所期待的易语言2007
  11. 光猫上网问题 看我如何解决
  12. 我的一些关于商业计划书的经验 (AC)
  13. VUE根据后端返回url链接下载文件
  14. 图像处理之前景检测(三)之码本(codebook)(主要为代码升级)
  15. 内网环境下element-template配置element-admin
  16. php漏洞 代码,PHP漏洞代码点滴
  17. [微信小程序]云服务器上传图片或视频
  18. android开发笔记之联系人百家姓功能的实现
  19. 文心一言对于宣传文案理解
  20. 【沃顿商学院学习笔记】领导力——Business Impact:09 逻辑模型四 Logic Model4

热门文章

  1. QT qss选择器------后代选择器
  2. 小程序打包体积优化策略
  3. 在ASP.NET Core中如何将各种文档合并为PDF?Aspose快速搞定!
  4. 【媒体聚焦】“我们为什么要为景安点赞”——记景安网络十四年峥嵘岁月
  5. 京东到家订单中心ES演进
  6. python实现base64解码_Python实现base64编码解码
  7. JavaScript 教程「2」:注释、输入输出、变量
  8. 惠普打印机驱动下载(电脑系统和打印机型号自动匹配)
  9. matlab无理数转分数,把无理数转化成分数值的方法
  10. 13.3nm粒径水溶性Cds/CdTe-PAA-P4VP/BSA的制备方法