基础介绍
文件类型
-
Linux用 EXT4系统 用/根目录 再分为几个部分 进行文件管理(目录即文件夹)
分有 bin,etc,mnt,dev,home,root,usr,boot,lib,proc这些子目录存放的内容由系统决定. -
Windows 用 NTFS 用盘符C,D,E等存放,存放内容由用户自己决定.
基本类型linux目录组织结构:倒状树
linux上一切皆文件:
linux文件类型:其实是一种文件属性,不是通过后缀名来区分的.
五种文件类型:
- 普通文件: - 剩下的都是普通文件
- 目录文件: d 文件夹
- 链接文件: l 类似windows上的快捷方式
- 管道文件: p 进程间通讯的时候的方式
- 设备文件: 不太常用(所有的外部设备在机器上呈现的)
分为–
===>>字符设备 c
===>>字符设备 b (磁盘)
===>>套接字 s (用于网络 全程socket)
权限
用户权限
linux是多用户的操作系统,可以运行多个用户同时登录工作,多用户工作时互不影响.
linux对于用户权限管理很严苛.linux上的文件针对不同的用户提供不同的权限.
权限是在文件上设置的,是文件的一种属性.(比如这个用户能操作这个文件,另一个却不能)
-
一个文件对操作他的用户进行了分类:
所有者 组用户 其他用户
(怎么分的:用户本身就是按组分的) -
eg:
组一:stu1 stu3 stu5
组二:stu4 stu6
组一:stu1 stu6 atu7
stu6创建一个文件,
所有者:stu6,
组用户:组三(这里看主组)
其他用户:(只要不是组三里的成员以及stu6)stu 3,5,4
文件权限
文件权限;
rwx rwx rwx
代表 user group other
r: 读权限
w:写权限
x:可执行权限 -->普通文件(有可执行权限的不一定能执行,能执行的肯定有可执行权限)
可进入权限–>目录文件
所有用户都在家目录下面.在家目录下面也分了小组,如果有A,B,C三个组,A组里的成员在A里可以为所欲为,但是不要进入其他组里去.
用户分为:
超级管理员:root
普通用户:剩下的所有用户
子目录作用
-
子目录作用:
-
bin: 系统命令对应的可执行文件.
-
pwd:显示当前位置的绝对路径.
-
ls:显示当前位置下的文件
-
etc:系统的配置目录
-
mnt:临时挂载点
-
dev:设备目录设备文件(接口)—把要访问的先弄到接口再给临时挂载点.
-
home:普通用户的家目录
-
root:root用户的家目录
-
usr:第三方插件的资源
-
boot:系统启动时需要的核心文件
-
lib:存放库(例如线程库)
-
proc:内存的映射,虚拟目录(如果系统关机了,这个里面的内容就没了,系统关机以后内存里的东西就没了,所以这里也就没了.)统计一些进程的统计信息.
基本操作
控制台目录及路径
- 右键打开 open in terminal 打开控制台
- cd / 切换到根目录
- pwd 显示当前路径.但是绝对不会给你显示内容.
- cd bin 从根目录/到bin里面去 这是相对路径.(从当前开始)
- cd /dev 从bin到dev去 这是绝对路径.(从根目录开始)
- ls -l:可以显示当前目录下的文件的属性信息
- ls -a:显示所有的文件 (包括隐藏文件:文件名以"."开头的文件)
- cd … 上一级目录
- cd . 当前目录
- cd ~ :用户的家目录 -》直接切换到当前用户的家目录
- cd - :切换到上一次所在的位置,在两个路径之间快速切换
- man ls 帮助 退出写q
文件操作
文件名:数字字母下划线,一般文件名之间不要出现空格,Linux大小写敏感
- 文件操作------普通文件---------------目录文件
- 创建-------touch file_name.*------mkdir dir_name
- 删除---------rm file_name.* -------- rmdir dir_name 仅能删除空目录
- rm -r dir_name 删除非空目录 -r是递归的手法
eg:touch cc.c 创建文件cc.c mkdir cc 创建文件夹
文件拷贝 :
- 针对普通文件
cp path1/file_name.* path2 将路径1下面的文件拷贝到路径2
cp path1/file_name.* path2/file_name2.* 将路径1下面的文件拷贝到路径2下并重命名 - 针对目录文件(文件夹)
不但要拷贝目录本身,要把目录里的文件都得拷过去,所以使用递归
cp -r path1/dir_name path2
剪切/重命名
mv path1/file_name.* path2 剪切
mv path1/file_name.* path1/file_name2.* 重命名
mv path1/file_name.* path2/file_name2.* 剪切并重命名
修改文件属性
文件类型 文件权限 链接数 所有者 组用户 文件大小 最后修改时间 文件名
-
可修改的:文件名 组用户 所有者 文件权限
修改所有者: chown newuser file_name.*
修改组用户: chgrp group file_name.*
以上两个只有root用户能够执行命令 -
修改权限: chmod
u:所有者
g:组用户
o:普通用户
a:所有的用户 -
1.字符方式:
-
chmod u/g/o/a +/-/= rwx(子集) 为某个用户加上或者减去一个权限
eg: chmod g+w passwd 给passwd的组用户加上写权限
chmod u+w,g+w passwd 给passwd的所有者以及组用户加上写权限
chmod u=x passwd 给passwd的所有者的权限直接改成x -
2.数字方式:
-
r w x 0—7 n的范围
0 0 0 说明这三个权限都没有
1 0 0 -->4
0 1 0 -->2
0 0 1 -->1
chmod nnn file_name.*
eg:
6 可读可写
666 分别指定 所有者,组用户,普通用户
文件编辑:
对目录文件–编辑文件本身 创建/修改/删除
文本文件 --> .c .cpp .h .java .py .sh
查看文件内容:文本文件
文件压缩
文件查找