【Linux】基础复习1-文件管理以及一些常用的命令

学习Linux的人肯定是听过一句话:Linux下一切皆文件。没错,Linux下最重要的一个任务就是进行文件管理。

我们首先来看一下操作系统的概念。在《操作系统之哲学原理》这本书上对操作系统的定义是:操作系统是掌控计算机上所有事情的软件系统。这句话有点笼统,具体来说操作系统就是管理软硬件资源,并为用户提供与计算机进行交互的一种软件。一般为人所熟知的操作系统有Windows和Linux:

1.Linux操作系统:

优点:(1)免费(2)开源(3)允许多用户的功能,允许多用户同时登陆操作系统进行操作(4)内核小

Windows操作系统:好用

2.两种系统目录结构:Windows  :C盘  D盘

                    Linux:树形结构

【Linux】基础复习1-文件管理以及一些常用的命令

/bin: 存储系统所使用的命令的可执行文件  ls   touch   mkdir  ……

/home:普通用户的家目录,Linux下有普通用户和超级用户,每个用户在home下创建输入自己的文件夹,

/dev:设备文件,“一切皆文件”,存储的是设备的接口文件,通过接口可以使用这个设备

/proc:虚拟目录,以进程为单位存储内存的映射,关机以后,内存里面没有东西,proc里面也没有东西。

/mnt:临时挂载点,U盘等外部设备

/usr(unix system resorce):第三方软件一些可执行文件或文档

/lib:库文件,静态库,共享库(Windows:动态库)

/etc系统配置目录

3.Linux一切皆文件:不以扩展名来区分文件类型,而以文件的属性来区分文件类型

ls -l

(1)普通文件:-  只要不是其他四类,就是普通文件:.c .h .cpp .java .py .pdf ……

(2)目录文件:d  目录(文件夹)

(3)链接文件:l  只是一种符号

(4)管道文件:p 

(5)设备文件:字符设备c键盘鼠标   块设备b   套接字s

【Linux】基础复习1-文件管理以及一些常用的命令

权限:文件给不同的用户设置不同的权限

属主:文件创建者

属组:(组用户:虚拟的概念,将几个用户划分为一组)组名,同一组有修改权限

为了更好的理解属组的概念,举下面一个例子:假如有六个用户,分别为stu1到stu6,六个用户被分为三组,group1~group3,stu3创建了一个文件main.c,那么main.c的属主就是stu3,属组为group2,

【Linux】基础复习1-文件管理以及一些常用的命令

那么文件的权限怎么区分呢?由下图就可以看到不同用户所就具有的不同的权限:

【Linux】基础复习1-文件管理以及一些常用的命令

r:读权限     w:写权限     x:可执行文件(对于普通文件来说是可执行,而对于目录文件表示的是是否可进入)

绝对路径

相对路径

4.文件操作命令:

 

普通文件

目录文件

创建

touch + 文件名

mkdir + 文件名

删除

rm + 文件名

rmdir(仅删除空目录)

rm -r(非空目录) 

拷贝

cp 源文件路径/文件名  目的文件路径/文件名

cp -r

剪切/重命名

mv

mv(只需要修改归属权限,所以不需要递归)

修改文件属主/属组

属组:只能root用户修改 chgrp newgroup filename

属主:只能root用户修改 chown newuser filename

 

修改文件权限

  1. 字符方式修改 chmod a(所有用户)/u(属主)/g(属组)/o(其他) +(添加)/-(去掉)/=(赋予新权限)  r/w/x
  2. 数字方式修改:

 

数字方式修改文件权限:

【Linux】基础复习1-文件管理以及一些常用的命令

由图可以看出,由数字方式可以修改文件权限,r/w/x每一个标志位如果具有该权限则为1,没有为0,一般有三种用户,每种用户的权限都可以用一个十进制数字来表示,表示为nnn , 例如  537  就表示属主具有可读可执行权限,属组具有可写可执行其他用户具有可读可写可执行权限  修改命令为  chmod  nnn  filename

Linux 上以 . 开始的都是隐藏文件

ls -l  

ls -a  显示所有的文件,包括隐藏文件

cd – 在两个目录之间来回切换

cd ~ 直接回到当前用户的家目录