LINUX系统结构及文件管理
1.linux的系统结构
类似于 windows 中文件夹的东西在 linux 中叫目录。linux 是一个倒树型结构,linux 中最大的目录是 “/”, 根目录,"/" 目录中的二级目录多为系统在安装过程中建立的。
目录 | 功能 |
---|---|
/bin | 存放大多数系统命令,所有用户都可以执行的命令,如:cat,mkdir,mv,cp,tar,chmod |
/sbin | 超级管理员专用目录,包含一些重要的命令shutdown,dump |
/boot | 存放系统开机时所需要的文件,开机时载入开机管理程序(bootloader)并映像到内存中 |
/dev | 存放设备的文件,系统设备管理文件 |
/etc | 存放大多数系统的配置文件 |
/home | 普通用户的家目录 |
/lib | 存放系统程序文件,包含C编译程序需要的函数库,是一组二进制文件 |
/mnt | 零时挂在点,专门挂载文件系统 |
/opt | 第三方程序安装目录 |
/proc | 系统硬件信息和进程信息存放位置 |
root | 超级用户的家目录 |
/tmp | 临时文件存储 |
/usr | 包含其他一些重要内容,如:bin,sbin,lib,include等,且bin下还有gcc,python等 |
/var | 存放系统定义表以便在系统运行改变时备份目录,如cache,ftp,mail,www |
2.相对路径和绝对路径
绝对路径:文件在系统的真实位置,文件名称通常以“/“开头,在系统的任何环境下用绝对路径都可以找到指定的文件,只要文件存在。
相对路径:相对于当前位置的一个名称的简写,不是以“/”开头的文件名称都是相对路径,相对路径只有在相对的位置才能使用。
新建文件file1使用的是绝对路径,新建文件file2使用的是相对路径,其实它们表示同一个位置,都是/root/Desktop位置。
3.文件和目录的常用操作
(1)建立文件和目录
命令 | 功能 |
---|---|
touch file | 新建文件file |
touch file{1…5} | 同时新建多个文件 |
mkdir westos | 新建目录 |
mkdir -p linux/westos | 新建多层目录 |
(2)删除文件和目录
命令 | 功能 |
---|---|
rm file | 删除文件但是会询问 |
rm -f file{1…5} | 强制删除文件不会询问 |
rm -r westos | 删除目录会有询问 |
rm -rf linux | 强制删除目录linux |
(3)编辑文件
a. 图形模式
使用gedit filename 进行文件的编辑,如果filename不存在,会新建文件,然后进入图形化模式,操作和windows一样。
b.vim模式
使用vim filename 会进入vim的命令行模式,点击【i】进入插入模式,就可以对文件进行编辑,编辑完成后,按【esc】键退出编辑模式,然后【:wq】退出保存。(关于vim的操作以后会详解)
注意:vim的异常退出
当vim异常退出时会生成.file.swp文件,当再次打开此文件时会出现以下情况:
无论按O(按:q退出),E,R,Q,A,都不会删除.swp文件,那么再次打开文件是还会出现以上界面,按【R】保存之后。在命令行中永久删除.swp文件,这样再次打开后,就不会出现以上情况。
(4)文件和目录的复制
命令 | 功能 |
---|---|
cp 源文件 目标文件 | 文件的复制 |
cp -r 源目录 目标目录 | 目录的复制 |
(5)文件的移动
命令 | 功能 |
---|---|
mv 源文件 目标文件 | 文件的移动 |
mv 源目录 目标目录 | 目录的移动 |
注意:相同磁盘的移动就是重命名,不同磁盘的移动就是复制删除。
(6)文件内容的查看
a.cat方式
命令 | 说明 |
---|---|
cat file | 查看文件的全部内容,不显示行号 |
cat -b file | -b显示行号,对空行不计行号 |
cat -n file | -n显示行号,对空行记行号 |
b.less方式
命令 | 说明 |
---|---|
less file | 分页浏览 |
上或者下 | 逐行移动 |
pageup或者pagedown | 逐页移动 |
/关键字 | 高亮显示关键字,n向下匹配,N向上匹配 |
v | 进入vim模式,按i进入编辑模式,在vm模式中按:wq退回到less模式 |
q | 退出 |
c.查看文件某几行
命令 | 说明 |
---|---|
head file | 查看文件的前10行,默认10行 |
head -n 3 file | 查看文件的前3行 |
tail file | 查看文件的后10行 |
tail -n 3 file | 查看文件的后3行 |
(7)文件属性的查看
命令 | 说明 |
---|---|
ls | 查看当前路径中所有的文件和目录名称 |
ls -l file | 长列表显示file属性 |
ls -d file | 显示目录本身 |
ls -ld dir | 显示目录的属性 |
ls -a | 显示所有文件包含隐藏文件 |
ls -s file | 显示文件大小,单位i是字节 |
ls -R dir | 递归显示,通常用于目录 |
ls -S dir | 查看并且按照大小排序 |
4.关于路径的常用命令
命令 | 说明 |
---|---|
pwd | 显示当前路径 |
cd 目录名称 | 切换到指定的目录 |
cd - | 当前目录和当前目录之前所在的目录之间切换 |
cd ~ | 切换到用户的家目录 |
cd . | 当前目录 |
cd … | 进入到目录的上级目录 |
5.通配符
通配符 | 说明 |
---|---|
* | 匹配0-任意字符 |
? | 匹配单个字符 |
~ | 匹配当前用户的家目录 |
~+ | 当前目录,相当于. |
~- | 当前目录之前所在的目录,相当于- |
[abc] | 一位,有a或b或c |
[!abc] | 一位,除了a或b或c |
[^abc | 一位,除了a或b或c |
[[:alpha:]] | 单个字母 |
[[:lower:]] | 单个小写字母 |
[[:upper:]] | 单个大写字母 |
[[:digit:]] | 单个数字 |
[[:punct:]] | 单个符号 |
[[:space:]] | 单个空格 |
[[:alnum:]] | 单个数字或字母 |
[[:punct:][:upper:]] | 单个字符或大写字母 |