1.文件层次结构:Linux系统中的所有文件存储在文件系统中,它们被组织到一个颠倒的目录中
2.文件类型:
普通文件:文本文件、数据文件、可执行文件
目录:子目录,父目录
- /目录根目录,位于系统文件层次结构的顶部
- /字符用作文件名中的目录分隔符
- /的子目录用于标准化的用途,方便根据文件和用途组织文件例。在根目录中,子目录/boot用于存储启动系统所需的文件
2.Linux的一般命令格式:
命令名 [选项] [参数]
3.Linux中的基本指令
3.1 /usr:安装的软件、共享的库,包括文件和静态只读程序数据
- /usr/bin :用户命令
- /usr/sbin : 系统管理命令
- /usr/local :本地自定义软件
3.2 /etc : 特定于此系统的配置文件
3.3 /var : 特定于此系统的可变数据,在系统启动之间保持永久性。动态变化文件可以在/var下找到
3.4 /run:自上次系统启动以来启动的进程的运行时数据(包括进程ID文件和锁定文件等),此目录中的内容在重启时重新创建
3.5 /home:普通用户存储其个人数据和配置文件的主目录
3.6 /root:管理超级用户root的主目录
3.7 /tmp:供临时文件使用的全局可写空间。一定时间内未访问、更改和修改的文件将自动从该目录中删除
3.8 /boot:开始启动过程所需的文件
3.9 /dev:包含特殊的设备文件,供系统用于访问硬件
3.10 zip/unzip
语法:zip 压缩文件.zip 目录或文件
功能:将目录或文件压缩成zip格式
选项:-r : 递归处理,将指定目录下的所有文件和子目录一并处理
将test目录压缩: zip test.zip test/*
解压到tmp目录: unzip test.zip -d /tmp
4.小结部分重要常见指令
4.1 ls 指令:
语法:ls [选项] [目录或文件]
功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名及其他信息
常用选项:
- -a:列出目录下的所有文件,包括以 . 开头的隐含文件
- -d:将目录像文件一样显示。如:ls -d 指定目录
- -i: 输出文件的i节点的索引信息。如ls -ai 指定文件
- -k: 以k字节的形式表示文件的大小。ls -alk 指定文件
- -l: 列出文件的详细信息
- -n: 用数字的UID,GID代替名称
- -F:在每个文件名后附上一个字符来说明文件类型,"*“表示可执行的普通文件,”/“表示目录,”@“表示符号链接,”|“表示FIFOs,”="表示socket
- -r:对目录反向排序
- -t:以时间排序
- -s:在l文件名后输出该文件的大小
- -R:列出所有子目录下的文件(递归)
- -1:一行只输出一个文件
4.2 pwd 指令
功能:显示用户当前所在的目录
4.3 who 指令
功能:列出当前服务器所使用的用户信息
4.4 echo 指令:
语法:echo [参数]
功能:将命令行的参数显示在屏幕上
4.5 date
功能:显示和设置系统时间
4.6 cal 指令
功能:显示日历
举例:cal 10 2019 //显示2019年10月日历
4.7 clear 指令
功能:清屏
4.8 su 指令
语法:su [用户名]
功能:切换用户
Linux下的两种用户:
超级用户(root):可以在linux系统下任意操作而不受限制,命令提示符"#"
普通用户:有权限限制,命令提示符"$"
su user //从root用户切换至普通用户user
su root/(省略root) //user切换root,此时系统会提示输入root用户口令
4.9 cd 指令
语法:cd 目录名
功能:改变工作目录。将当前工作目录改变到指定的目录下
例:
- cd / :跳转到根目录
- cd … :返回上级目录
- cd /home/linux/ :绝对路径
- cd …/linux/ :相对路径
- cd - :返回最近访问目录
- cd ~ :进入用户家目
对于root用户,cd ~ 相当于 cd/root
对于普通用户,cd ~ 相当于cd /home/当前用户名
4.10 touch 指令
语法:touch [选项]文件
功能:用于修改文件时间戳,将其更新为最近一次的修改时间,也可以通过此指令新建一个不存在的文件
4.11 wc 指令
功能:统计文件中的行,字,字节数
常用选项:
-l 行数
-w 字数
-c 字节数(包括换行(视为空字节))
例:wc file1 //显示文件的行,字,字节数
5.Linux下的文件管理指令
5.1 mkdir 指令
语法:mkdir [选项] dirname
功能:在当前目录下创建一个"dirname"目录
常用选项:
- -p , --parents 可以是一个路径名称。此时如果路径中的某些目录上不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录
例:mkdir -p test/test1 :递归建立多个目录
5.2 rmdir&&rm 指令
rmdir 指令语法: rmdir [选项] dirName
此指令适用于具有当前目录操作权限的所有使用者,用来删除空目录
常用选项:
- -p 当子目录被删除后如果父目录也变成空目录的话,就连同父目录一并删除
rm 指令语法: rm [选项] dirName/dir
此指令适用于所有使用者,用来删除文件或目录
常用选项:
- -f :即使文件属性为只读也可直接删除
- -i :删除前逐一询问确认
- -r :删除目录及其下所有文件
5.3 cp 指令
语法:cp [选项] 源文件或目录 目标文件或目录
功能:复制文件或目录
常用选项:
- -r :递归处理,将目录下的文件和子目录一并处理
- -f :强行复制文件或目录。不论目的文件或目录是否已经存在
5.4 mv 指令
语法:mv [选项] 源文件或目录 目标文件或目录
功能:
1.参数类型为目标文件或目录:mv命令将文件重命名或将其移至一个新的目录中
2.参数类型为文件:mv命令完成文件重命名。此时,源文件/源目录名只有一个,它将所给的源文件或目录重命名为给定的目标文件名
3.参数类型为已存在的目录名称:源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中
常用选项:
- -f :若目标文件已经存在,不会询问而直接覆盖
- -i :若目标文件已经存在时,询问是否覆盖
5.5 cat 指令
语法:cat [选项] [文件]
功能:查看目标文件的内容
常用选项:
- -b :对非空输出行编号
- -n :对输出的所有行编号
- -s :不输出多行空行
cat file1 file2 //显示文件file1,file2的内容
cat file1 file2 > file3 //将file1,file2的内容合并到file3(">"符号为输出重定向操作符)
5.6 more 指令
语法:more [选项] [文件]
功能:分页显示文件内容
常用选项:
- -n :对输出的所有行编号
- q :退出more
- -num :一次显示num行
- +num :从第num行开始显示
5.7 less 指令
语法:less [参数] 文件
功能:与more类似,但less可以随意浏览文件并且在查看之前不会加载整个文件,而more仅能向前移动。除此。less有搜索功能(向上或向下搜)
选项:
- -i :搜索时忽略大小写
- /字符串 :向下搜索"字符串"
- ?字符串 :向上搜索"字符串"
- q : quit
5.8 head 指令
语法:head [参数]…[文件]…
功能:显示文件的开头几行,默认值10
选项:
-n<行数> :显示的行数
-nc :显示前n个字节
5.9 tail 指令
语法:tail [必要参数] [选择参数] [文件]
功能:显示文件的末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件
选项:
-f :循环读取
-n<行数> :显示行数
举例:
//一个文件共100行内容,读取第50行内容
seq 1 100> test # 生成1到100的序列放入test
方法1 head -n50 test > tmp # 将前50行放入临时文件tmp
tail -n1 tmp #得到结果
方法2 head -n50 test | tail -n1 #直接显示第50行内容
5.10 find 指令
语法:find pathname -options
功能:用于在文件树中查找文件,并作出相应的处理(可能访问磁盘)
常用选项:
- -name :根据文件名查找文件
- -size : 根据文件大小查找文件
- -ctime :根据修改时间查找文件
例:
find -ctime -20 //查找在20天之内修改过的文件
find -ctime +20 //查找修改时间超过20天的文件
5.11 grep 指令
语法:gre [选项] 搜寻字符串 文件
功能:在文件中搜索字符串。将找到的行打印出来
常用选项:
- -i : 忽略大小写
- -n : 顺便输出行号