Linux常用文件和目录管理

本文旨在对y总的Linux基础课做学习记录,方便日后复习
参考视频:Linux基础课
参考教程:Linux教程

0 绝对路径和相对路径

Linux 的目录结构为树状结构

  1. 绝对路径:由根目录 / 写起,例如: /usr/share/doc
  2. 相对路径:不是由 / 写起

1 Linux系统目录结构

Linux常用文件和目录管理_第1张图片
系统启动必须:

  • /boot:存放的启动Linux 时使用的内核文件,包括连接文件以及镜像文件
  • /etc:存放所有的系统需要的配置文件和子目录列表,更改目录下的文件可能会导致系统不能启动
  • /lib:存放基本代码库(比如c++库),其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库
  • /sys: 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中

指令集合:

  • /bin:存放着最常用的程序和指令
  • /sbin:只有系统管理员能使用的程序和指令

外部文件管理:

  • /dev :Device(设备)的缩写, 存放的是Linux的外部设备。注意:在Linux中访问设备和访问文件的方式是相同的
  • /media:类windows的其他设备,例如U盘、光驱等等,识别后linux会把设备放到这个目录下
  • /mnt:临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了

临时文件:

  • /run:是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run
  • /lost+found:一般情况下为空的,系统非法关机后,这里就存放一些文件
  • /tmp:这个目录是用来存放一些临时文件的

账户:

  • /root:系统管理员的用户主目录
  • /home:用户的主目录,以用户的账号命名的
  • /usr:用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录
  • /usr/bin:系统用户使用的应用程序与指令
  • /usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序
  • /usr/src:内核源代码默认的放置目录

运行过程中要用:

  • /var:存放经常修改的数据,比如程序运行的日志文件(/var/log 目录下)
  • /proc:管理内存空间!虚拟的目录,是系统内存的映射,我们可以直接访问这个目录来,获取系统信息。这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件来做修改

扩展用的:

  • /opt:默认是空的,安装额外软件可以放在这个里面
  • /srv:存放服务启动后需要提取的数据(不用服务器就是空)

在 Linux 系统中,需要注意不要误删除或者随意更改内部文件。

/etc: 系统中的配置文件,如果更改了该目录下的某个文件可能会导致系统不能启动
/bin, /sbin, /usr/bin, /usr/sbin:系统预设的执行文件的放置目录,比如 ls 就是在 /bin/ls 目录下的
/bin、/usr/bin 是给系统用户使用的指令(除 root 外的通用用户),而/sbin, /usr/sbin 则是给 root 使用的指令
/var: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在 /var/log 目录下,另外 mail 的预设放置也是在这里

2 常用文件管理命令

(1)Ctrl c:取消命令,并且换行
(2)Ctrl u:清空本行命令
(3)Tab:可以补全命令和文件名,如果补全不了快速按两下tab键,可以显示备选选项
(4)ls:列出当前目录下所有文件,蓝色的是文件夹,白色的是普通文件,绿色的是可执行文件

ls -a:查看所有文件包括隐藏文件(以.开头的文件就是隐藏文件)
ls -l:查看当前路径下文件的读、写、执行权限
ls | wc -l:查看ls下有多少个文件

(5)pwd:显示当前路径

-P :显示出确实的路径,而非使用链接 (link) 路径。

(6)cd XXX:进入XXX目录下,cd …返回上层目录

  • .:当前目录 …:上级目录
  • ~:家目录,回回到路径/home/acs下
  • cd -:返回改变路径前的路径

(7)cp XXX YYY:将XXX文件复制成YYY

  • cp XXX YYY -r 将XXX目录(文件夹)复制到YYY下
  • 非当前路径重命名方法:cp a.txt …/b.txt

(8)mkdir XXX:创建目录(文件夹)XXX

mkdir -p:-p:如果文件夹不存在,则创建

(9)rm XXX:删除普通文件; rm XXX -r:删除文件夹

  • 支持正则表达式,删除所有.txt类型文件:rm *.txt
  • 删除所有文件(不包括文件夹):rm *
  • 正则表达式删除所有文件夹:rm * -r

(10)mv XXX YYY:将XXX文件移动到YYY下,和cp命令一样,XXX和YYY可以是同一个路径;重命名
(11)touch XXX:创建一个文件
(12)cat XXX:展示文件XXX中的内容
(13)复制文本:windows/Linux下:Ctrl + insert,Mac下:command + c
(14)粘贴文本:windows/Linux下:Shift + insert,Mac下:command + v
(15)history:查看历史输入指令
(16)tree:以树形显示文件目录结构
(17)rmdir:删除一个空的目录

你可能感兴趣的:(Linux,linux,运维,服务器)