文件类
pwd:显示当前工作目录的绝对路径
基本语法:pwd
cd:切换路径
基本语法:cd [参数]
参数 | 功能 |
cd 绝对路径 | 切换路径 |
cd 相对路径 | 切换路径 |
cd | 切换到家目录 |
cd - | 回到上一次所在目录 |
cd .. | 回到当前目录的上一级目录 |
cd -P | 跳转到实际物理路径,而非快捷方式 |
ls:列出目录内容
ls [选项] [目录或是文件]
选项 | 功能 |
-a | 全部文件连同隐藏文件一起输出到终端 |
-l | 长数据串输出,包含文件的属性,文件的权限等等数据;等价ll |
显示说明:依次列出、文件类型与权限、链接数、文件属主、文件属组、文件大小用byte表示、 建立或最新修改的时间、名字
mkdir:创建目录
基本语法:mkdir [选项] 要创建目录的名字
选项 | 功能 |
-p | 创建多层目录 |
touch:创建文件
基本语法:touch 要创建文件的名字
cp:复制文件或目录
基本语法:cp [选项] 文件 文件路径
选项 | 功能 |
-r | 递归复制整个文件 |
经验技巧:强制覆盖不提醒的方法\cp
rm:删除目录或文件
基本语法:rm [选项] 文件名
选项 | 功能 |
-r | 递归删除目录的内容 |
-f | 强制删除 |
-v | 显示指令执行过程 |
mv:移动文件或重命名文件
基本语法:mv 文件名 文件路径
查看类命令
cat:查看文件内容
基本语法:cat [选项] 文件名
选项 | 功能 |
-n | 显示文件行号 |
less:查看文件内容(比cat强大,翻页,搜索关键字)
基本语法:less 文件名
选项 | 功能 |
空格 | 往下翻一页 |
pgdown | 往下翻一页 |
pgup | 往上翻一页 |
/字串 | 向下搜索[字串]的功能;n向下查找,N向上查找 |
q | 退出 |
head:查看文件头部内容
基本语法:head 文件(默认显示文件头10行)
head -n 5 (查看文件头5行内容,5可以是任意行数)
tail:查看文件尾部内容(常常用于查看日志)
基本语法:tail 文件(默认显示文件尾部10行)
tail -n 5 文件(显示文件尾部6行)
tail -f 文件(实时追踪该文档的所有更新)
用户管理类命令
useradd:添加一个新用户
基本语法:useradd 用户名
useradd -g 用户组 用户名 (添加新用户到某个组)
案例实操:添加一个用户fang
passwd:设置用户密码
基本语法:passwd 用户名
案例实操:设置fang的密码为123
id:查看用户是否存在
基本语法:id 用户名
案例实操:查看用户fang是否存在
查看所有用户的目录为:/etc/passwd
实操演示
sudo:设置普通用户具有root权限
修改 /etc/sudoers目录,添加普通用户
案例实操:设置用户fang具有root权限
userdel:删除用户
基本语法:userdel 用户名(只删除用户,不删除用户组)
userdel -r 用户名(用户,用户组一起删除)
usermod:修改用户的组
基本语法:usermod -g 用户组 用户名
选项 | 功能 |
-g | 修改用户的初始登录组,给定的组必须存在,默认组id是1 |
案例实操:修改用户fang的组为xin
groupadd:创建一个用户组
基本语法:groupadd 组名
案例实操:添加一个xin组
文件权限
Linux系统是一个典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一个文件(包括目录)的权限做了不同的规定。在Linux中我们可以使用ll或ls -l命令显示一个文件的属性以及文件所属的用户和组
从左到右的10个字符表示
如果没有权限,就会出现减号[-]而已。从左到右用0-9这些数字表示:
-
0首位表示类型
在Linux中第一个字符代表这个文件是目录、文件或链接文件等
- 代表文件
d 代表目录
l 链接文件
-
第1-3位确定属主(该文件的所有者)拥有该文件的权限。--user
-
第4-6位确定属组(所有者的同组文件)拥有该文件的权限。--group
-
第7-9位确定其他用户拥有该文件的权限 --Other
rwx作用文件和目录的不同解释
-
作用到文件:
-
[ r ]代表可读(read):可以读取,查看
-
[ w ]代表可写(write):可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写的权限,才能删除该文件
-
[ x ]代表可执行:可以被系统执行
-
-
作用到目录:
-
[ r ]代表可读(read):可以读取,ls查看目录内容
-
[ w ]代表可写(write):可以修改,目录内创建+删除+目录重命名
-
[ x ]代表可执行:可以进入目录
-
文件基本属性介绍
如果查看到是文件:链接数量指的是硬链接个数
如果查看到是目录:链接数量指的是子文件夹个数
chmod:改变文件权限
基本语法:chmod [mode=421] [文件或目录]
经验技巧:
u:所有者,g:所有组,o:其他人
r=4 w=2 x=1 rwx=7
案例实操:修改一个文件的权限
修改一个目录的权限需要加上-R:递归的修改目录权限
chown:改变所有者
基本语法:chown [选项] [最终用户] [文件或目录]
选项说明:
选项 | 功能 |
---|---|
-R | 递归操作 |
案例实操:修改文件所有者:chown fang test
chgrp:改变所属组
-
基本语法
chgrp [最终用户组] [文件或目录] (功能描述:改变文件或者目录的所属组)
-
实操演示
修改文件的所属组:chgrp huang test
搜索查找类
find:查找文件或者目录
find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端
基本语法:find [搜索范围] [选项]
选项说明:
选项 | 功能 |
---|---|
-name<查询方式> | 按照指定的文件名查找模式查找文件 |
-user<用户名> | 查找属于指定用户名所有文件 |
-size<文件大小> | 按照指定的文件大小查找文件 |
案例实操:
按文件名:根据名称查找/root目录下以.cfg结尾的文件
按用户名:查找用户为huang的底下有多少文件
按文件大小:查找/root目录下超过1M的文件
locate快速定位文件路径
-
locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻
-
基本语法
-
locate 搜索文件
-
-
经验技巧
-
由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建local数据库
-
-
案例实操:查找文件夹
grep过滤查找及“|”管道符
管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理
基本语法:grep 选项 查找内容 源文件
选项说明
选项 | 功能 |
---|---|
-v | 排除匹配结果 |
-n | 显示匹配行于行号 |
-i | 不区分大小写 |
-c | 只统计匹配行数 |
-E | 使用egrep命令,过滤多个参数 |
--color=auto | 为grep过滤结果添加颜色 |
-w | 只匹配过滤单词 |
-o | 只输出匹配内容 |
注意事项:^$表示空格
案例实操:查找文件在第几行
压缩和解压类
zip/unzip压缩
基本语法:zip [选项] *.zip 将要压缩的内容(功能描述:压缩文件和目录的命令)
unzip [选项] *.zip (功能描述:解压缩文件)
选项说明:
zip选项 | 功能 |
-r | 递归压缩目录 |
unzip选项 | 功能 |
-d <文件路径> | 指定解压后文件的存放目录 |
案例实操:用zip压缩root目录,起名为myroot.zip,然后解压到/tmp目录下
[root@huangjunrun ~]# zip -r myroot.zip /root/
[root@huangjunrun ~]# unzip -d /tmp myroot.zip
tar打包
基本语法:
tar [选项] XXX.tar.gz 将要打包进去的内容 (功能描述:打包目录,压缩后的文件格式.tar.gz)
选项说明:
选项 | 功能 |
---|---|
-c | 产生.tar打包文件 |
-v | 显示详细信息 |
-f | 指定压缩后的文件名 |
-z | 打包同时压缩 |
-x | 解包.tar文件 |
-C | 解压到指定目录 |
案例实操:
压缩多个文件
解压huang.tar.gz到/tmp目录下